背景:
xampp中的apache架设了一个php的服务,这个服务是提供缓存于同步用的,但是会出现不定期的嗝屁,于是就在调度中定时重启apache,所以发现xampp中的start.bat,也是执行xampp中的apache的某个exe执行,现在像将exe执行后并隐藏
解决方案:
可以使用窗口句柄来实现窗体的隐藏,方法如下:nCmdshow :1=显示,0=隐藏
[DllImport("user32.dll", EntryPoint = "ShowWindow", SetLastError = true)]
static extern bool ShowWindow(IntPtr hWnd, uint nCmdShow);
此时只要在启动exe的Process中获取句柄即可
Process process = new Process();
pdatePath = ConfigurationManager.AppSettings["xamppStartPath"];
LogHelper.WriteLog("PHP服务启动路径:" + updatePath);
process.StartInfo.FileName = updatePath;
process.Start();
Thread.Sleep(3000);
IntPtr intPtr = process.MainWindowHandle;
ShowWindow(intPtr, 0);