c#调用API函数

睿鑫 2006-05-10 10:37:50
[DllImport("user32.dll")]
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
string lpszParentClass = "#32770"; //整个窗口的类名
string lpszParentWindow = "Microsoft Excel"; //窗口标题
IntPtr ParenthWnd = new IntPtr(0);

//查到窗体,得到整个窗体
//ParenthWnd = FindWindow(lpszParentClass,lpszParentWindow);
ParenthWnd = FindWindow(lpszParentClass,lpszParentWindow);
//判断这个窗体是否有效
if (!ParenthWnd.Equals(IntPtr.Zero))
{
Response.Write("找到了!");
}
else
{
Response.Write("Sorry!没找到此窗口!");
}

}
怎么总是提示我没找到此窗口呢?
请问错在哪里了?
...全文
174 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
kssys 2006-05-11
  • 打赏
  • 举报
回复
参看:http://community.csdn.net/Expert/TopicView3.asp?id=4719224
睿鑫 2006-05-10
  • 打赏
  • 举报
回复
是一样的啊,不知道错在哪里?我看过的.
在执行findwind时总返回0,为什么?
gnhao 2006-05-10
  • 打赏
  • 举报
回复
www.pinvoke.net
睿鑫 2006-05-10
  • 打赏
  • 举报
回复
我现在是在测试,只是在WEB程序中用API函数FINDWINDOW去找我己经打开的EXCEL文档,但是会找不到.
peterb 2006-05-10
  • 打赏
  • 举报
回复
web应用程序打开其他应用程序如Excel是不显示窗口,所以找不到了,进程在后台运行而已
睿鑫 2006-05-10
  • 打赏
  • 举报
回复
是的,是在服务器上开的Excel.
我现在发现这段代码在WinForm里可以运行,可以找到。
但在WebForm里运行,是找不到的。
请问为什么?跟权限有关吗?哪位能够提示一下。
我也正在找原因。
谢谢各位参与!
XDvlper 2006-05-10
  • 打赏
  • 举报
回复
注意, 这是在服务器上执行的! 你确定在服务器上开了Excel了?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧