强制.Net Windows服务在64位计算机上以32位运行

问题描述 投票:39回答:2

我得到了一个Windows服务,它引用了一个只能在32位上运行的COM组件。我的机器是x64,因此服务尝试启动,无法创建COM组件,并且死机。

我没有源,只有.exe文件。有没有办法强制服务在win64机器上以32位模式启动?

.net configuration 64bit
2个回答
69
投票

也许.NET工具corflags会有所帮助:

corflags /32bit+ myservice.exe


2
投票

corflags.exe附带Windows SDK,而不是.NET。

corflags.exe只需针对目标服务exe运行一次。然后,服务将以32位模式运行。

注意所需的参数是/ 32bitreq +或/ 32bitpref +。

corflags.exe / 32bitreq + myservice.exe

© www.soinside.com 2019 - 2024. All rights reserved.