当delphi项目创建具有特定名称的exes时,链接到Windows创建的游戏

cos*_*sta 10 delphi windows-7-x64 delphi-xe5

我有一个名为VR的Delphi项目,它生成一个名为VR.exe的可执行文件.令我沮丧的是,我发现Windows(我正在运行Window 7 64位Ultimate)添加了开始菜单和游戏下的链接:搜索和救援:越南MED + EVAC.链接的图标是默认的delphi应用程序图标.

做了一些研究,我找到了这篇文章:

http://social.technet.microsoft.com/Forums/windows/en-US/a5919fc1-db3d-4f13-b241-d059df2bf11f/renaming-a-file-into-vrexe

如何阻止Windows执行此操作?

更新:我有另一个项目MM,它生成mm.exe.这个创建了Steam Dark Messiah Might和Magic Single Player的链接.

另一个更新:我们向Microsoft提交了支持请求.他们承认这是一个错误,然而,他们未能提供修复的时间表.

更新:这是微软的答案:

我写信通知你,这个问题在我们的最后是可以重现的,我们也在过去报道了这个问题.由于这已经被我们的代码确定为"按设计",并且到目前为止我们没有对此进行解决,因此我无法提供帮助.但是,如果您有任何想要了解的信息,例如它如何影响业务或任何其他问题,请告诉我.

我接受了雷米的回答.

Rem*_*eau 6

根据MSDN,游戏应用程序应该集成到游戏资源管理器中,Windows不应该自动集成任何东西.但我可以在Win7 Home系统上确认将任何应用程序重命名为vr.exe然后运行它会导致搜索和救援:越南MED + EVAC出现在游戏资源管理器中(当应用程序运行时,也有非常明显的延迟)第一次,我想象的是由于识别/整合的发生.

运行应用程序后,我发现以下注册表项与该游戏相关联:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\GameUX\S-1-5-21-991038988-4040401710-2535580036-1000\{2A051900-E642-4D69-8D4E-1B3A2FD42CCF}
Run Code Online (Sandbox Code Playgroud)

它包含对此文件的引用

C:\Windows\system32\GameUXLegacyGDFs.dll
Run Code Online (Sandbox Code Playgroud)

我用资源查看器查看了文件内容,看到它充满了RC_DATA包含GDF游戏定义的资源.

我删除了注册表项,现在游戏不再出现在游戏资源管理器中,无论我运行重命名的vr.exe文件多少次.

  • 问题是,如何删除此注册表项会干扰游戏资源管理器中的真实*搜索和救援:越南MED + EVAC*游戏注册(在此删除之前或之后安装).我知道,这是一个角落案件,但仍然...... [+ 1] (2认同)
  • 我删除的注册表项是Microsoft的传统游戏检测.我希望真正的游戏能够使用自己的DLL正确注册,甚至可能是一个不同的GUID. (2认同)