Tôi đang cố gắng tạo quy trình trên một máy từ xa bằng cách sử dụng lớp System.Diagnostics.Process. Tôi có thể tạo một quy trình. Nhưng vấn đề là, việc tạo một dịch vụ mất nhiều thời gian và cửa sổ giao diện điều khiển được hiển thị. Một điều khó chịu khác là cửa sổ giao diện điều khiển được hiển thị trên biểu mẫu cửa sổ của tôi và tôi không thể thực hiện bất kỳ thao tác nào khác trên biểu mẫu đó. Tôi đã đặt tất cả các thuộc tính như CreateNoWindow = true
,
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
nhưng nó vẫn hiển thị cửa sổ giao diện điều khiển. thậm chí tôi đã chuyển hướng đầu ra và lỗi để tách luồng nhưng không may mắn.
Có cách nào khác để ẩn cửa sổ Console không? Hãy giúp tôi ra .
Đây là phần mã của tôi mà tôi đã sử dụng để thực hiện lệnh sc.
Process proc = new Process();
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
proc.StartInfo.FileName = "sc";
proc.StartInfo.Arguments = string.Format(@"\\SYS25 create MySvc binPath= C:\mysvc.exe");
proc.StartInfo.RedirectStandardError = false;
proc.StartInfo.RedirectStandardOutput = false;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.Start();
proc.WaitForExit();
UseShellExecute
và CreateNoWindow
hai lần?
proc.StartInfo.RedirectedStandardOutput = true
chưa? Tôi đã nhận được điều này để làm việc với một Ứng dụng Windows.