CreateService WinAPI功能的 dwServiceType 参数的主要可接受值为 SERVICE_WIN32_OWN_PROCESS
和 SERVICE_WIN32_SHARE_PROCESS
即可。
至于“WIN32”的出现,这些值是否也适用于64位软件?
通常,在32位和64位架构之间创建不同的服务(例如,在C ++中)?
答案 0 :(得分:2)
短语“WIN32”适用于 api层的名称,它与进程的位数没有任何关系。 Win32是Windows 3.x中使用的16位api的继承者,是NT支持的三个子系统之一(Posix和OS / 2是被遗忘的子系统)。
显然,在winapi移植到64位之后,这是一个混乱的根源,因为SO上的[win32]标签现在重定向到[winapi]。
不,创建64位服务并没有什么不同。只需在项目中添加“x64”平台目标并重新编译即可。只要您编写了干净的代码,就可以在不进行任何更改的情况下工作。 YMMV。