目前,我们已经设置了一个.bat文件,其中列出了启动/停止它们的所有服务,例如。
SC start SERVICE1
SC start SERVICE2
SC stop SERVICE1
SC stop SERVICE2
Run Code Online (Sandbox Code Playgroud)
我们一直在添加新服务,并且列表不断增长并且难以在批处理文件中维护。
是否可以使用诸如“SC start SERVICE*”之类的 WILDCARD?
在 64 位 Windows (Vista/7) 中,HKLM\Software\Wow6432Node所有 32 位注册表的东西都在那里。如果我有一个包含一些键的 .reg 文件,我如何告诉 regedit 将它导入 32 位注册表(在 下Wow6432Node)而不是 64 位注册表?
即使我将 Wow6432 路径放入 .reg 文件中的注册表项中,Windows 也会“巧妙地”忽略它们并将它们放入主 64 位注册表中。
我必须支持最初为 Windows NT 4(32 位)创建的旧应用程序,但在 Windows 10(64 位)下仍然可以正常运行,前提是所有兼容性设置都已完成。问题是这些必须主要由手工完成。
我试图弄清楚如何构建一个我可以为此目的提供的程序或脚本。我已经知道兼容性设置存储在注册表中HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers或HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers分别(根据设置是否适用于所有或单个用户),通过添加值,它们的名称是像实例的应用程序路径
C:\Program Files (x86)\SomeApp\SomeBinary.exe
Run Code Online (Sandbox Code Playgroud)
添加内容(用于启用与 Windows XP Service Pack 3 的兼容性)
WINXPSP3
Run Code Online (Sandbox Code Playgroud)
在 Windows 7 上观察到,或
~ WINXPSP3
Run Code Online (Sandbox Code Playgroud)
在 Windows 8.1(和 Windows 8)上观察到
在发布这样的工具之前,我想了解的是:
开始值内容的波浪号的目的或含义是什么?
我已经搜索了几个月(谷歌,必应),但到目前为止,我只发现了一些问题。只能猜测它也可能毫无意义(?):
当通过属性设置兼容模式时,Windoze 会在值前放置一个波浪号 (~),后跟一个空格,例如“~ WINXPSP3”。然而,无论波浪号如何,它似乎都有效(或视情况而定)。
但是关于调整兼容性设置的大多数建议似乎都非常注意这个神奇的字符:
有没有人真正了解它?
我有 CHM 文件总是显示相同的错误:“导航到网页被取消”
所有节点都有相同的错误。

我能做些什么来修复它?
我正在运行带有 Internet Explorer 8.0.6001 的 Windows XP SP3
windows ×2
32-bit ×1
64-bit ×1
batch-file ×1
chm ×1
services ×1
windows-8 ×1
windows-8.1 ×1
windows-xp ×1