首页 > 学院 > 开发设计 > 正文

Windows服务启动进程Cjwdev.WindowsApi.dll 的下载

2019-11-06 08:17:16
字体:
来源:转载
供稿:网友

今天突然发现,自己之前写的windows服务无法启动后台进程,本来以为是关于服务的代码写的有问题,可是通过日志调试了一下以后,发现并没有什么问题,而且启动进程的

代码也执行了但是,进程并没有运行起来,后来就百度了一下,原来是需要一个引用--Cjwdev.WindowsApi.dll

这里先附上下载地址:http://pan.baidu.com/s/1qYwHtX6

把Cjwdev.WindowsApi.dll添加引用到项目中,然后就是传入进程的执行文件filePath 就可以启动这个进程了。

 string appStartPath =filPath;                IntPtr userTokenHandle = IntPtr.Zero;                ApiDefinitions.WTSQueryUserToken(ApiDefinitions.WTSGetActiveConsolesessionId(), ref userTokenHandle);                ApiDefinitions.PROCESS_INFORMATION procInfo = new ApiDefinitions.PROCESS_INFORMATION();                ApiDefinitions.STARTUPINFO startInfo = new ApiDefinitions.STARTUPINFO();                startInfo.cb = (uint)System.Runtime.InteropServices.Marshal.SizeOf(startInfo);                ApiDefinitions.CreateProcessAsUser(                    userTokenHandle,                    appStartPath,                    "",                    IntPtr.Zero,                    IntPtr.Zero,                    false,                    0,                    IntPtr.Zero,                    null,                    ref startInfo,                    out procInfo);                if (userTokenHandle != IntPtr.Zero)                    ApiDefinitions.CloseHandle(userTokenHandle);                int _currentAquariusProcessId = (int)procInfo.dwProcessId;

对了这个还需要添加命名空间:using Cjwdev.WindowsApi;


上一篇:数制转换

下一篇:杨辉三角

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表