2017-05-21 1 views
0

파일로 Excel을 시작하려고합니다. 그것은 동일한 사용자와 함께 실행할 때 잘 동작합니다. 그러나 다른 사용자의 경우 Excel 만 시작되며 알 수없는 오류가 있습니다.C# processstartinfo start process excel

private void button1_Click(object sender, EventArgs e) 
     { 
      SecureString securePwd = new SecureString(); 

      string password = "[email protected]"; 
      SecureString sec_pass = new SecureString(); 
      Array.ForEach(password.ToArray(), sec_pass.AppendChar); 
      sec_pass.MakeReadOnly(); 

      ProcessStartInfo ps = new ProcessStartInfo(); 
      ps.FileName = "c:\\Program Files\\Microsoft Office\\Office15\\EXCEL.EXE"; 
      ps.Arguments = "c:\\test_folder\\test.xlsx"; 
      ps.WorkingDirectory = "c:\\test_folder"; 
      ps.Domain = "test.local"; 
      ps.UserName = "testuser"; 
      ps.Password = sec_pass; 
      ps.UseShellExecute = false; 
      Process.Start(ps); 
     } 

enter image description here

매우 동일한 코드가 ps.FileName =에서 프로세스를 변경하여 완벽하게 잘 작동 "C : \ 프로그램 파일 \ 마이크로 소프트 오피스 \ Office15 \ EXCEL.EXE"; ~ ps.FileName = "notepad.EXE";

아무런 권한 문제가있는 경우에도 notepad.exe도 작동하지 않아야합니다.

+0

이 코드는 어디에도 없습니다. 실제로 Windows를 로그 아웃하고 다시 로그인하여 "testuser"계정을 사용하십시오. 그리고 Excel을 시작하십시오. 더 나은 오류 메시지가 표시되지 않으면 코드를 사용하여 Excel을 실행하는 데 필요한 프로필을 적어도 만들었을 것입니다. –

+0

notepad.exe와 작동합니다. –

답변

0

이것은 매우 일반적인 현상입니다. 예를 들어 회사에서 일하면서 친구와 공유 Excel 파일을 열면 "파일이 다른 사용자가 열었습니다"라는 정보가 표시됩니다.이 상황을 해결하면 C :/Temp와 같이이 파일을 복사 한 다음 나중에 대체 할 수 있습니다 공간을 공유하십시오.

+0

문제가되지 않습니다. Bcz notepad.exe로 열면 같은 파일이 정상적으로 열립니다. –

0

코드와 관련된 문제는없는 것 같습니다. 비트를 변경하지 않고서, 그것은 단지 다시 잘 작동하기 시작했습니다. 단순히 아무것도. 이것은 단지 문제가 무엇인지와 같은 질문을 엽니 다.

제안 사항.?

관련 문제