问题标签 [showwindow]

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.

0 投票
1 回答
142 浏览

powershell - 错误:从运行对话框导入 DLL

仅当从运行对话框执行以下 powershell 命令时,我似乎才遇到 DLL 导入错误。来自打开的 powershell 窗口的完全相同的命令可以毫无问题地执行。

产生 RUN 对话框命令时出错:

打印以下错误: PowerShell错误

在已打开的 powershell 窗口中运行相同的代码时不会返回错误:

我觉得这非常令人困惑,因为我认为这两种方法都应该产生相同的结果。为什么会发生这种情况有任何合乎逻辑的理由吗?如何解决此错误?

代码的目的是最小化 powershell 窗口。我知道还有其他方法可以实现这一点。

0 投票
2 回答
1398 浏览

c - 为什么要对 ShowWindow() 进行初始调用?

首先需要注意的是,我最近才开始学习 WinAPI。我敢肯定这个问题以前已经被问过很多次了,但由于某种原因,我在网上的任何地方都找不到。问题就是这个;为什么要在执行消息循环之前在ShowWindow()正文中进行初始调用?WinMain()为什么不简单地通过使用WS_VISIBLE标志将窗口设置为最初可见?

ShowWindow()我对函数的机制也有一些疑问。它实际上发送了哪些消息?在 MSDN 中它指出:

如果窗口在WS_VISIBLE创建时具有样式,则窗口[WM_SHOWWINDOW]在创建后但在显示之前收到此消息。ShowWindow当orShowOwnedPopups 函数更改其可见性状态时,窗口也会收到此消息。

这是否意味着ShowWindow()函数和 Windows 之间的主要通信方式是通过WM_SHOWWINDOW消息?它还指出:

以下WM_SHOWWINDOW情况不发送消息:

  • WS_MAXIMIZE 当使用orWS_MINIMIZE样式创建顶层重叠窗口时。

  • 在对函数SW_SHOWNORMAL的调用中指定标志时。ShowWindow

MSDN 还指出:

应用程序第一次调用ShowWindow时,它应该使用 WinMain函数的nCmdShow参数作为其nCmdShow参数。

Petzold 声明传递给此nCmdShow参数的参数将是SW_SHOWNORMAL,SW_SHOWMAXIMIZEDSW_SHOWMINNOACTIVE。我是否可以从中得出该ShowWindow()函数唯一不发送WM_SHOWWINDOW消息的时间,是我们第一次对它进行初始调用的时候Winmain()吗?如果是这样,它如何让窗口显示?此外,所有这些与窗户的实际绘画有何关系?

如果我的问题有点混乱,我很抱歉,但是显示窗口的机制让我感到困惑,并且由于某种原因,很难在网上找到这些问题的明确答案(而不仅仅是零碎的信息)。在澄清所有这些方面的任何帮助将不胜感激!

0 投票
0 回答
186 浏览

c# - 启动时从托盘恢复同一应用程序的其他实例

我创建了一个程序,它在最小化时将自身隐藏到托盘图标中。它只能运行一个实例,当您尝试再次运行它时,它应该显示并激活当前实例。我的代码看起来像这样。

并且此代码在窗口可见和不活动时工作正常,但在隐藏在托盘图标中的程序中时什么也不做。我做错了什么?提前致谢。

0 投票
0 回答
70 浏览

c# - 将笔记本电脑连接到多台显示器时出现显示器编号问题

我开发了一个应用程序,我可以将程序分配给特定的监视器,这样当我停靠我的笔记本电脑时,我的所有打开的窗口都会被推送到我的主监视器上,我可以按下全局热键Alt+d以及所有已被分配给监视器被推送到他们分配的监视器。我还有 3 个其他热键Alt+ 1Alt+2Alt+ 3,它们将焦点窗口移动到相应的监视器。我注意到当我回到我的办公桌并在我的笔记本电脑处于睡眠状态时对接它然后重新登录到 Windows 时,代码中返回的监视器工作区域与显示设置中显示的内容不匹配。

这是 Windows 显示的监视器布局。红色是我的代码显示的内容。

监控分配

如果我取消停靠然后停靠所有匹配项。

这是我将当前聚焦的窗口移动到特定监视器的代码。
Alt+1发送 0,Alt+2发送 1,Alt+3发送 2:

更新
我做了更多的调试,并Screen.AllScreens根据我的计算机在对接时的状态返回不同的数组:

看一下这个。

任何想法为什么会发生这种情况?

0 投票
1 回答
216 浏览

c# - C# 显示窗口不工作(#32770 (Dialog))

32770 对话框的类。

我使用 chrome 远程桌面连接到我的电脑。

图像:https ://social.msdn.microsoft.com/Forums/getfile/1410849

我该如何隐藏它?

不管用。

0 投票
3 回答
333 浏览

c++ - 哪个问题阻止 ShowWindow 工作?

我尝试创建一个窗口,当它最小化时它是隐藏的。当窗口最小化时,它应该被隐藏。我的问题在哪里?是什么阻止了 ShowWindow 工作?

0 投票
3 回答
73 浏览

powershell - Powershell新人

我是powershell的新手,所以如果我的问题听起来很愚蠢,请原谅我。我从 Yuri Posidelov 那里找到了下面的脚本,我对其进行了调整以激活进程并显示窗口并发送击键以关闭运行良好的进程。但是,如果有两个同名的进程,它会失败任何人都可以帮助我解决这个问题。

Yuriy Posidelov 的原始密码

0 投票
1 回答
481 浏览

winapi - MFC:启动时显示或最小化(隐藏)窗口

CWinApp::InitInstance()我有:

但是我的 ShowWindow 调用不会导致OnSize()orOnShowWindow()回调?在ProcessShellCommand()这些过程中被调用了几次,因为第OnShowWindow()一次通过SetWindowPlacement(). 一切正常,恢复到最后一个状态,但ProcessShellCommand()之后调用ShowWindowSW_SHOW会导致我在最小化时隐藏的窗口显示在任务栏上。显示窗口或最小化它(隐藏它)的正确位置在哪里。基本上发生的事情是最小化进入(在SetWindowPlacement(),窗口被隐藏,MFC后来的调用SW_SHOW使其在任务栏上最小化而不是隐藏,我的强制ShowWindow()没有做任何事情。

蒂亚!!

0 投票
0 回答
112 浏览

vb.net - 从隐藏窗口打开弹出窗口

我正在 VB.NET 中开发一个工具来自动化另一个应用程序的一些任务,但是,我想以一种隐藏的方式来做这件事。我打开编辑器,然后通过ShowWindow (Editor, SW_HIDE)隐藏它的窗口。

问题是在这个编辑器中有一个“另存为”按钮,它会打开一个弹出窗口来放置名称并单击保存。

当编辑器未隐藏时,它可以完美运行。但是,当编辑器被隐藏时,弹出窗口不会加载(我找不到它的句柄)。

是否有可能以某种方式执行此任务,最好也使用隐藏的弹出窗口?

提前致谢。

编辑:

PS1:只有当我使用 Inspect 时,才能在 Spy ++ 中查看“另存为”按钮。

为了了解它们之间的区别,我找到了这篇文章。

阅读这篇文章,我了解到 UIA 看不到隐藏元素。

Spy ++ 和检查屏幕

对我的项目有什么建议吗?

这是我的代码:

0 投票
1 回答
502 浏览

c++ - 为什么隐藏窗口并显示另一个窗口时 C++ ShowWindow() 不能正常工作?

我正在用 C++ 编写我的第一个 Win32 应用程序,我正在尝试创建 3 个窗口,根据用户单击的按钮在它们之间进行重定向。我将窗口(window1,window2,window3)初始化为主窗口hwnd的子窗口,并且仅将window1设置为可见。window1也有两个按钮,每个按钮都应该指向window2window3

我试图隐藏window1并使用ShowWindow()函数显示我想切换到哪个窗口。但是,它不起作用(单击按钮不会执行任何操作)。你能帮我理解为什么吗?

在我之前的另一段代码中,我没有创建 window1,按钮和其他两个窗口只是 hwnd 的子级,按下按钮确实显示了正确的窗口,但按钮仍然存在,即使它没有属于那个窗口。

此外,是否有更有效的方式在窗口之间切换(无需一次又一次地删除和创建它们?

谢谢!!!

编辑:我设法解决了我的问题。这是因为我将 Windows 1,2 和 3 声明为静态的。通过将它们声明在与 hwnd 相同的类下,我能够处理来自主 WindowProcedure() 下的按钮的消息。由于我的程序会很简单,我不需要为新窗口创建不同的程序,但是感谢评论,现在我也知道该怎么做了!