2012-04-20 2 views
1

소스 파일에서 다른 winform 응용 프로그램을 컴파일하고 런타임에 .resources 파일을 만든 다음 컴파일 타임에 .resources 파일을 포함 리소스로 추가하는 응용 프로그램이 있습니다. 코드를 새로 작성하는 데 사용하는 코드 .resources 파일은 다음과 같습니다.임베디드 리소스에서 임시 폴더로 이미지를 추출하는 방법은 무엇입니까?

// Creating .resources file from a file named Photo.jpg 

     string myfile = "photo.jpg"; 
     using (ResourceWriter rw = new ResourceWriter(@".\photoRes.resources")) 
     { 
      rw.AddResource("MyPhoto",File.ReadAllBytes(myfile)); 
     } 

이 리소스 파일은 임베디드 리소스로 컴파일 된 프로그램에 추가됩니다. 라인 아래 지금까지 그 일

 // -- -- -- inside the CompileExecutable() function -- -- -- 
     CompilerParameters cp = new CompilerParameters(); 
     .. 
     .. 
     if (provider.Supports(GeneratorSupport.Resources)) 
      { 
       cp.EmbeddedResources.Add("bindedfile.resources"); 
      } 
     .. 
     .. 

을 할 것, 모든 작품을 좋아, 우리는 소스 파일에서 컴파일 컴파일 된 프로그램 (프로그램 크기 + 사진 크기)입니다.

그림은 이제 해당 파일의 포함 된 리소스입니다. 따라서 그림에 액세스하고 압축을 풀고 실행하려면 코드의 일부 라인을 해당 파일의 소스에 추가해야합니다.

제 질문은 source.cs 파일에 포함 된 이미지를 추출하여 임시 폴더에서 실행하도록 지시하는 것입니다.

내가 source.cs

string[] arrayofstrings = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceNames(); 
     foreach(string s in arrayofstrings) {MessageBox.Show(s);} 

에 아래 라인을 추가 할 때 그것은 나에게이 텍스트가 하나의 메시지 상자를 보여줍니다 photoRes.resources

포함 된 리소스를 읽은 다음 임시 폴더에 이미지를 추출하는 방법을 그것을 실행? source.cs에 어떤 라인을 추가합니까?

답변

관련 문제