2011-01-21 4 views
3

그림을 홈 그룹 공유 폴더로 복사하려고합니다. 나는>시작 메뉴를 통해 cmd.exe를 오픈> cmd.exe를를 실행하고 입력 한 :C에서 cmd를 사용하여 다른 컴퓨터에 파일 복사 #

copy C:\pic1.png \\SOMECOMP\Users\SOMEONE\Shared 

사진이 잘 복사되었습니다. 그러나 , 내가 그런 식으로, C 번호와 동일한 작업을 수행하려고 :

System.Diagnostics.Process.Start(@"cmd.exe", @"/c start copy C:\pic1.png \\SOMECOMP\Users\SOMEONE\Shared"); 

나는 다음과 같은 메시지가 얻을 : 액세스가 거부되었습니다

합니다.

어떻게 해결할 수 있습니까?

P. - File.Copy가 동일한 오류를 발생시킵니다. 나를 위해 cmd 방식이 더 유망 해 보였습니다.

+6

C#으로 직접 파일을 복사하는 대신 cmd.exe를 사용하여 명령을 실행하려고하는 이유가 있습니까? http://msdn.microsoft.com/en-us/library/cc148994.aspx –

+1

.NET에서 파일 복사 방법을 제공 할 때 System.Diagnostics.Process를 사용하여 파일을 복사하는 이유는 무엇입니까? – David

+0

@ Davidity 아마도 그가 File을 알지 못했기 때문일 수 있습니다 .Copy는 .Net Framework의 일부였습니까? – Alex7575

답변

5

왜 일 때 Process.Start을 사용하여 파일을 복사 하시겠습니까?

File.Copy(@"C:\pic1.png", @"\\SOMECOMP\Users\SOMEONE\Shared\pic1.png", true); 

지금까지 액세스 거부 메시지는 계정이 아래 프로그램을 실행하고 있는지 확인해야합니다 관한 한 ASP.NET 응용 프로그램 또는 Windows의 경우되지 않을 수도 있습니다이 UNC 공유에 쓰기 권한이 NT 서비스는 제한된 권한 계정으로 실행됩니다.

+0

네, 좋아요, dest 경로 인수의 끝에'pic1.png'을 보셨습니까? 또한 사용 권한은 어떻게됩니까? –

+0

나는 당신이 당신의 응용 프로그램을 실행중인 계정에 쓰기 권한을 부여해야한다고 말했다. 어떤 종류의 응용입니까? 윈도우, ASP.NET, ...? –

+0

이것을 시도하십시오. File.Copy를 사용하여 C# 응용 프로그램을 작성하십시오. 빌드 한 후에는 IDE에서 실행하지 마십시오. 디버그 디렉토리에서 실행 파일을 마우스 오른쪽 버튼으로 클릭하십시오. adn Run As Admin – xbonez

0

당신은 아마 당신이 파일을 복사하는 System.IO.File 네임 스페이스를 사용할 수있는 경우, 예 그러나 디렉토리

& "net" "use" "$mapdrive" "$password" "/USER:$username" 
& "copy" $src "$dest" 
& "net" "use" $mapdrive "/delete" 

에게지도 할 필요가있다.

관련 문제