【发布时间】: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 提出的,他提供了一种解决方法。