问题标签 [findwindow]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vb.net - FindWindow FindWindowEx
我编写了一个程序,该程序是在另一个程序中找到一个框并将焦点设置在它上面。完成此操作后,它将发送密钥并保存到此框。
我正在使用 Findwindow 和 FindwindowEx 来定位该框,但我遇到了一些问题。
如果您注意到窗口一直到第一个 TPanel 都是相同的。现在之后有 3Tpanel 类。在 3Tpanel 类之后有多个 TttgEdit 类。
我如何教授我想要选择的课程?到目前为止,这是我的代码。
德尔卡
资源
左侧的数字,hWnd,每次关闭和打开屏幕时都会改变,所以我不能将它们用作静态数字。任何帮助都是极好的。
winapi - 如何知道进程是否从服务运行
我制作了一个 GUI 应用程序,它必须在我的 DELL 服务器上运行才能 24 小时发送查询。
如果应用程序被随机用户停止,或者不管它是什么,我创建了一个服务程序来检测它何时停止运行,并再次执行它。
问题是,在服务中,FindWindow() 不能正常工作(总是返回 nullptr),因为微软从 XP 开始改变了它的操作系统服务策略。而且我的服务程序无法找到该程序是否在进程列表中。
我在互联网上找到了一些解决方案,即“允许服务与服务面板上的桌面交互”,但由于它是很久以前的,所以不太适合当前的操作系统版本。
我应该改用 IPC 吗?或任何其他解决方法?
我相信必须有一种方法可以做到这一点,因为使用 CreateProcessAsUser() 也可以从服务执行进程。
任何建议将不胜感激。
提前致谢。
nsis - 为什么卸载要求关闭未打开的应用程序?
从资源管理器启动卸载时,它会弹出一条消息,要求用户关闭应用程序。
但是,应用程序没有运行。FindWindow看到了什么用户看不到的东西?
这在 Windows95 或使用 Win95 界面的系统上不会发生。
从开始菜单中的卸载图标卸载时不会发生此问题。
c# - 单击按钮后 SendMessage 卡住了
奇怪的问题,我无法解决。搜索主窗口,然后搜索标题为“开始”的按钮控件。在它找到开始并发送按钮点击后,它只是坐在那里,永远不会过去,所以我从来没有在控制台中看到“离开循环”。
该按钮确实被按下并弹出一个消息框,我将在这部分代码之外继续回答。奇怪的是,一旦我手动回答该框,它就会中断 NativeMethods.SendMessage(start, BM_CLICK, IntPtr.Zero, ""); 我看到“离开循环”,然后一切都很开心,继续前进。
我在这里想念什么?希望我解释得足够好。
}
c# - 以编程方式单击 MessageBox 按钮
正如标题所示,我正在尝试以编程方式模拟 MessageBox 中的按钮单击。我之前尝试通过标题找到它的句柄来关闭 MessageBox,WM_CLOSE
然后SC_CLOSE
在SendMessage()
. 但是,由于存在是/否按钮,这不起作用(X 按钮变灰)。
现在我正在尝试单击“否”按钮,如下所示 - :
在 IRC 某人的建议下走了这么远,我发现之前进行了一些编辑,我得到了按钮句柄(只有“&是”按钮),但不是全部。然后他建议了这种方法,但control
List 没有填充,因此它永远不会进入foreach
. 我该怎么做才能解决这个问题?
c# - 如何在应用程序中查找和关闭窗口
我遇到了以下问题:
我开发了一个 C# 应用程序,其中一部分使用 webbrowser 控件。
在某些情况下,网络浏览器控件会打开一个标题为“文件下载 - 安全警告”的窗口。
我的问题是:我怎样才能找到这个窗口并关闭它?
我偶然发现了 API 的 FINDOW 和 FINDWINDOWEX 函数,但我不明白。
有谁能帮忙吗?
vba - 使用 FindWindow 在 VBA 中隐藏 WScriptExec 窗口
是的。复杂。
前提:
我正在运行一个需要通过 FTP 检索信息的 Access 数据库。它使用 WScriptExec 对象运行 ftp.exe 并读取 stdOut 以确定创建目录的日期和时间(名称是格式为“d.yymmdd.hhmmss”的日期和时间,所以我只是向ls d.*
服务器发送一个)。该代码有效,除了我希望窗口不显示或至少隐藏得更快。
目标:
通过找到它的句柄来查找和操作 WScriptExec 窗口(我天生就有 ProcessID,这显然毫无价值)。不,我不想/不能在此应用程序中使用 .Run 并输出到文件。我以后可能需要像这样操作一个窗口,并且想知道如何在没有“使用其他方法”之类的解决方法的情况下进行操作。
我试过的:
-FindWindow("Console,MSDOS,pretty much any made up class I could think of since I don't know class types", "C:\WINDOWS\system32\ftp.exe, C:\WINDOWS\system32\cmd.exe, ftp.exe, cmd.exe, pretty much every window title you can imagine")
所有这些都在另一个参数中使用 vbNullString。我尝试过的一切都返回 0。
-FindWindowLike
从这个链接。我尝试过的一切都返回 0。我对其进行了修改以弹出它找到的每个窗口,但没有看到听起来正确的窗口标题。所以我假设标题不是 WScriptExec 命令提示符窗口中显示的标题。
- GetForegroundWindow
。返回我的 Access DB 窗口,即使在AppActivate objExec.ProcessID
.
仅供参考,我如何调用 WScriptExec 对象:(
Set objExec = objShell.Exec("cmd /c ftp -n ftp.server.location")
我也尝试过cmd /c
;两者都有效)
c# - 设备管理器交互发送键
我正在尝试编写一个简单的控制台程序,该程序将启动设备管理器并通过使用击键来浏览它。到目前为止,我无法让他们击键以在设备管理器中注册。
该程序可以正常启动设备管理器,但设备管理器中似乎没有击键。我知道设备管理器的树部分使用 Spy++ 称为 SysTreeView32。
有什么建议么?
到目前为止,这是我的代码。
EDIT1:您必须以管理员身份运行该程序才能正常工作。
最终代码:
vb.net - 应用程序按钮上的 SendMessage BM_CLICK
嘿,我对这个 BM_CLICK 问题的影响有点困惑。
这是我的代码:
调试输出为:
现在我不知道为什么它没有找到也没有点击确定按钮。
该按钮的 Spy++ 如下所示:
任何帮助都会很棒!
vba - 多次调用 BringWindowToTop 不起作用
我无法理解以下代码有什么问题 -
它应该在两个窗口之间切换并让它们保持焦点直到 1 秒,但实际发生的是它只是将 Firefox 放在顶部,然后没有切换。
谢谢