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

C#中使用net share命令时要注意的问题

2019-11-18 16:52:03
字体:
来源:转载
供稿:网友

最近的这个项目中有一要求就是要将数据放在局域网上共享,使其它机器来访问。这样就必须要将文件夹共享,本来是考虑用API来实现共享,不过后发现太繁琐,所以采用了NET SHARE这条WINDOWS命令。

                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 + "/"";
http://www.VEVb.com/wanlang/archive/2006/11/22/568705.html


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