我有Windows服务,我真的需要运行一个控制台应用程序(用C ++编写,但没有源代码)。问题是 - 服务无法执行其他软件。而“不使用服务”也不是解决方案。
问题是 - 我有exe文件。有没有什么方法可以在我当前的进程中用这个exe调用stock[x].award = 1;
,就像它只是DLL一样?
答案 0 :(得分:0)
你不能将exe调用为dll。但你可以做的是使用CreateProcess运行exe。
然而,服务是不同的,它们中的主要代码通常什么也不做,只是启动作为服务运行的服务(基本上)。因此,除了在服务控制管理器上单击“开始”之外,调用它将不会执行任何操作。
您可以通过编程方式将服务作为服务运行,但无法在您自己的进程空间内调用代码。将exe视为一个你无法控制的黑匣子,除了开始运行(直接通过调用它,或通过将其作为服务间接运行)