无论如何,这是我的分析。我"分发"今天早上我的应用程序到我们的组织只是为了了解到,在这个旧的win32应用程序上使用Windows 7" Basic"主题见a very faded appearance。但是我们这些使用远程桌面或使用Basic主题的人会看到about what I think we've always seen。
事实:
真相:
dpr看起来像这样:
1 24 "win7.manifest"
因为我怀疑它很重要,win7.rc是:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity type="win32" name="App" version="3.1.0.0" processorArchitecture="*"/>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" publicKeyToken="6595b64144ccf1df" language="*" processorArchitecture="*"/>
</dependentAssembly>
</dependency>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<!--The ID below indicates application support for Windows Vista -->
<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
<!--The ID below indicates application support for Windows 7 -->
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
</application>
</compatibility>
</assembly>
反过来又是:
curl -X POST -d "grant_type=password&username=<user_name>&password=<password>" -u "<client_id>:<client_secret>" http://127.0.0.1:8000/o/token/
答案 0 :(得分:2)
从您的应用中禁用/删除与Metropolis相关的所有内容。 Metropolis仅适用于Windows 8+ Metro风格应用程序,其中遗留应用程序没有任何业务合作(除非您希望将UI转换为Metropolis,这实际上是重写)。
好像使用Metropolis UI已经覆盖了你的颜色,并且正在使用它在Metro风格应用程序中使用的颜色。
另一个选择(清理时)是从头开始没有.dproj
文件(以防万一)。它会自动检测应用程序的类型并将其升级到默认设置。你当然还必须在设置中重做很多事情,但这是摆脱任何旧引用并清除这些问题的好方法(假设你已经删除了所有其他的Metropolis引用)。
答案 1 :(得分:2)
由于您要包含自己的清单,因此应禁用“启用运行时主题”,否则exe中将包含重复的清单,但只能有一个清单。
您应该使用“使用自定义清单选项”,删除{$R 'win7.rc'}
并让Delphi为您编译。这也将使您更容易根据需要更改清单。
答案 2 :(得分:0)
这里的所有建议都有价值 - 它们简化了。但最终问题是Aero Glass。 &#34; SheetOfGlass&#34;已经在应用程序的根表单中启用了。
远程桌面无法替代看到应用程序的真实外观。
&#34;主题&#34;的价值值得商榷。我的观点是应用程序应该或多或少地符合平台规范。我沿着主题道路前进,因为这让我们很容易&#34;支持文本输入中的文本提示。