【问题标题】:Windows 8 tablet - How to prevent explorer from starting desktop app with maximized window?Windows 8 平板电脑 - 如何防止资源管理器以最大化窗口启动桌面应用程序?
【发布时间】:2015-02-04 08:39:52
【问题描述】:

当我在 Windows 8 平板电脑上启动桌面应用程序时,资源管理器以 SW_SHOWMAXIMIZED 启动它。 例如,如果您从命令提示符启动记事本,它会以正常窗口大小打开,但如果您从资源管理器执行此操作,则会打开最大化的窗口。我只在平板电脑上看到过这种 Explorer 行为,我猜 Explorer 是故意这样做的。

我知道它可能对许多应用程序有用,但我希望我的程序以正常大小开始,除非用户明确要求资源管理器最大化打开它。

有没有办法阻止我的应用程序出现这种情况?我希望有一个 API 或清单可以做到这一点,但我在 MSDN 上找不到任何信息。

提前致谢。

【问题讨论】:

  • 我假设您意识到您的程序可以随意忽略 SW_SHOWMAXIMIZED?
  • 是的。但是,如果用户想要这样做(通过设置快捷方式选项等),我也想以最大化窗口启动我的程序。
  • 在这个线程中,有人似乎有同样的问题。不管听起来多么奇怪,这可能是一个驱动程序问题:msfn.org/board/topic/173349-windows-81-maximize/?p=1093262
  • 在 Stack Overflow 上提出了一个类似的问题:stackoverflow.com/questions/28930582/… -- 其中一个 cmets 是 Raymond Chen 提出的,他提供了一种解决方法。

标签: windows-8 explorer


【解决方案1】:

看看这是否有帮助:

  1. 打开任何受此问题影响的程序。 注意:确保它是该程序唯一打开的窗口。例如。只有在打开一个命令提示符窗口时才能执行此操作。
  2. 调整您喜欢的窗口大小和位置。
  3. 在键盘上按住 Ctrl 的同时,通过单击(或触摸,对于平板电脑)右上角的 X关闭窗口窗口的一角将其关闭。
  4. 重新打开程序。您的窗口现在应该按照您在第 3 步中设置的方式打开。

【讨论】:

  • 抱歉,我误按了 Enter 键....正如我在原始问题中所写,即使按照您的建议,Explorer 也会在平板电脑上启动程序 SW_SHOWMAXIMIZED。它仅适用于非平板电脑,其中 Explorer 以 SW_SHOWNORMAL 启动应用程序。
  • 还有哪些程序有这个问题?所有桌面程序?只有从桌面启动的程序?只有微软程序? cmd打开是否最大化?
  • 查看从 C:\Program Files[Program] 手动运行 .exe 是否会在资源管理器中正常打开(不是在 cmd 中)。
  • 做到了,没有区别。你真的看到了不同的结果吗?
  • 明确一点,这不是每个程序都记住其窗口大小的问题。这是关于资源管理器总是在 Windows 8 平板电脑上使用 SW_SHOWMAXIMIZED 启动桌面应用程序。我不确定所有 Windows 8 平板电脑是否都会发生这种情况,但我在 HP Stream 7 上看到了这种情况。正如我在最初的问题中所写,从命令提示符启动程序时不会发生这种情况。所以,我很确定这是 Explorer 的行为。
猜你喜欢
  • 1970-01-01
  • 2015-05-09
  • 1970-01-01
  • 2013-04-14
  • 2013-06-23
  • 2019-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多