2009-12-29 6 views
2

.NET을 통해 한 컴퓨터에서 다른 컴퓨터로 한 위치에있는 텍스트 파일을 1 초마다 전송해야합니다. 나중에 다시 전송해야합니다. C# .NET을 통한 접근 방법을 도와주세요.Machine to Machine 파일 전송

+0

을 파일을 이동 타이머를 사용할 수 있습니까? 무슨 목적을 위해. 파일이 클 경우이 작업은 상당히 어려울 수 있습니다. 너 뭐 벌써 해봤 니? – GrayWizardx

+0

기계가 동일하거나 다른 네트워크에 있습니까? – A9S6

답변

1

또한 컴퓨터 클래스와 시간의 파일 초에 한번씩 전송 1 초마다

1

각 컴퓨터에 FTP 서버가있는 경우 C# FTP Client Library을 사용할 수 있습니다.

P2P libraries 중 하나를 고려해 볼 수도 있습니다 (FTP 서버 필요 없음).

사용할 수있는 시간에 파일을 전송할 수 있는지 여부는 파일 전송에 사용하는 것보다 파일 크기와 대역폭에 따라 다르지만 일부 프로토콜은 다른 것보다 오버 헤드가 많습니다.

+0

FTP로하는 방법? – venkat

+0

각 시스템에 FTP 서버가 구성되어 있어야합니다. 그런 다음 C# FTP 클라이언트 라이브러리의 코드를 자신의 프로그램에 추가합니다 (내 대답의 링크 참조). 이렇게하면 원격 시스템에 대한 FTP 연결을 열고 파일을 복사하는 데 사용할 수있는 클래스가 제공됩니다. 클라이언트 라이브러리와 함께 데모 코드가 있으며이를 수행하는 방법을 정확히 보여줍니다. –

2

컴퓨터가 동일한 네트워크에있는 경우 네트워크 공유를 사용해보십시오. 그런 다음 File.Copy 방법을 사용하여 파일의 대상 폴더로 \\machine\folder을 사용할 수 있습니다.

2

컴퓨터 A에서 컴퓨터 B로 파일을 전송하려면 Copy 메서드를 사용할 수 있습니다. 당신이 기계 B에 대한 관리 권한이 가정 당신은 기계 B에 시스템 A에서 매 초마다 파일을 복사하려면 다음 코드를 사용할 수

ThreadPool.RegisterWaitForSingleObject(
    new ManualResetEvent(false), 
    (state, timedOut) => 
    { 
     // TODO: error handling 
     File.Copy("c:\someFile.txt", "\\machineB\c$\someFile.txt", true); 
    }, 
    null, 
    TimeSpan.FromSeconds(1), 
    false); 

당신은 당신이 주식을 사용할 수있는 기계 B에 대한 관리 권한이없는 경우 :

File.Copy("c:\someFile.txt", "\\machineB\someShare\someFile.txt", true); 
관련 문제