System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "cmd";
p.StartInfo.Arguments = " /c net share " + shareName + "=" + sharePath;
p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowstyle.Hidden;
p.StartInfo.CreateNoWindow = true;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.Start();
p.WaitForExit();
shareName:可以是任何有效的共享名。sharePath:是要共享的完整路徑。
項目制作過程沒有發現任何不對,但到了安裝到program files目錄下就出現問題了,不能正確的共享,排查發現是路徑中有空格的原因。在網上找了一些文章,解決辦法是加上引號即可:
p.StartInfo.Arguments = " /c net share " + shareName + "=\"" + sharePath + "\"";