Copy文件之前先用有權限的账号登陆,然后用此账号操作

来源:互联网 发布:淘宝的虎扑伙伴怎么样 编辑:程序博客网 时间:2024/06/10 17:50

域中有台服务器Copy文件到本机,本机用户对此目录有读写權限,可以Copy,Delete文件。
程序每天自动执行Copy的动作,当我本机用户登陆出来以后,登陆用户注销了,程序也就自动退出了,没法执行了。

把程序做成了服务,只要开机程序就会运行,但是系统用户(system)就没权限操作

 

方法:  

    在Copy文件之前先用有權限的账号登陆,然后用此账号操作。  
    就象在SQL语句中连接另外一台服务器那样。  

 

public   static   void   OpenDirectory(string   str_Directory,string   to_Directory,   string   str_UserName,   string   str_Password)  
                  {  
                          string   str_LogoOn   =   "net   use   "   +   str_Directory   +   "   /user:"   +   str_UserName   +   "   /""   +   str_Password   +   "/"";  
                          string   str_OpenDirectory   =   "start   "   +   str_Directory;  
   
                          Process   p_Tmp   =   new   Process();  
                          p_Tmp.StartInfo.RedirectStandardError   =   true;  
                          p_Tmp.StartInfo.RedirectStandardInput   =   true;  
                          p_Tmp.StartInfo.RedirectStandardOutput   =   true;  
                          p_Tmp.StartInfo.UseShellExecute   =   false;  
                          p_Tmp.StartInfo.CreateNoWindow   =   true;  
                          p_Tmp.StartInfo.FileName   =   "cmd.exe";  
                          p_Tmp.Start();  
                          p_Tmp.StandardInput.WriteLine(str_LogoOn);  
                          p_Tmp.StandardInput.WriteLine(str_OpenDirectory);  
                          p_Tmp.StandardInput.WriteLine("exit");  
                          p_Tmp.Close();  
                          p_Tmp.Dispose();  
   
                          string[]   files   =   Directory.GetFiles(fromDirectory);  
                          if   (files.Length   >   0)  
                          {  
                                  foreach   (string   s   in   files)  
                                  {  
                                          FileInfo   objFI   =   new   System.IO.FileInfo(s);   
                                          File.Copy(str_Directory   +   "//"   +   objFI.Name.ToString(),   to_Directory   +   "//"   +   objFI.Name.ToString());  
                                  }  
                          }  
                  }

原创粉丝点击