2009-06-22 4 views
0

다른 Windows 응용 프로그램과 인터페이스하려고하는데 파일 클립 보드의 덤프를 저장합니다. 더 정확히 말하면 클립 보드에 "소스 소스 포함"형식을 찾고 찾으면 파일에 저장합니다. "소스 포함"은 예를 들어 페인트 브러시에서 이미지를 복사 할 때 생성되는 OLE 기반 형식입니다.저장된 "소스 소스"클립 보드 데이터를 다시로드하는 방법은 무엇입니까?

이러한 파일의 내용을 다시 클립 보드로 다시로드 할 수있는 방법이 있습니까? 예를 들어 그림판이나 다른 Office 프로그램에 붙여 넣을 수 있습니까?

는 C#에서 나는 데이터 파일의 바이트를 포함하는 배열입니다

System.Windows.Forms.Clipboard.SetData("Embed Source", data); 

을 시도했지만, 클립 보드에 데이터를 배치하기 전에, 더 싸서 것으로 보인다.

누군가가 좋은 방법을 알고 있습니까 (반드시 C#이 아닐 수도 있습니다)?

감사합니다, R 해결

답변

1

, 당신은 Clipboard.SetData에게 스트림 개체를 전달해야하고, 그렇게함으로써, 다른 형식에서 데이터를 포장하지 않습니다.

  System.IO.FileStream s = System.IO.File.Open("c:\\temp\\dxf.ole",System.IO.FileMode.Open); 

     Clipboard.SetData("Embed Source", s); 

     s.Close(); 

붓을하지 않기 때문에 그러나, 일부 메타 데이터가 손실, 당신은 리로디드 데이터를 붙여 넣습니다,하지만 또 다른 질문입니다.