정리가 간략하게 잘된 내용이 있어 기록함.
참조하는 DLL , OCX 를 같이 배포하지 않고 모든 파일을 리소스에 포함시켜 단이 EXE 로 만든 다음 실행시 DLL,OCX 파일을 다시 생성하는 방법
요약) 1. 리소스 파일에 리소스 추가 ->기존파일 추가 ->참조하는 원본 파일을 추가
2. Resources 폴더 생성되고 참조파일이 추가된걸 확인 후 -> 참조파일 우측 속성 -> 빌드작업 -> 포함리소스 지정
3. 프로젝트 처음 시작 구분에 참조파일명과 동일한 이름 파일을 만들고 -> 리소스에서 파일을 읽어서 덮어쓰기
* 아래 구문 폼 로드 부분. 원본참조동일함.
// 컴파일 배포시 단이 exe 로 배포하고 , 참조하는 dll은 리소스 파일에 추가하여 (참조리소스)
// 단일 실행파일로 만들어 배포함.
// 프로그램은 실행시 참조 dll 파일을 생성하고 리소스 파일에 있는 원 파일을 읽어서 대체함.
string strOutlookPath = System.Windows.Forms.Application.ExecutablePath.Replace("/", "\\");
int intPos = strOutlookPath.LastIndexOf("\\");
if (intPos >= 1) strOutlookPath = strOutlookPath.Substring(0, intPos).Trim('\\');
strOutlookPath += "\\Microsoft.Office.Interop.Outlook.dll";
FileInfo fileinfo = new FileInfo(strOutlookPath);
if (fileinfo.Exists == false)
{
byte[] aryData = Resource1.Microsoft_Office_Interop_Outlook; //리소드 디자인에 저장한 이름
FileStream fileStream = new FileStream(fileinfo.FullName, FileMode.CreateNew);
fileStream.Write(aryData, 0, aryData.Length);
fileStream.Close();
}
원본 링크
http://liesm.tistory.com/entry/C-Exe-파일에-DllOcx-파일-포함하여-컴파일하기
다른참조 링크
http://xinics.tistory.com/89
'Pang System' 카테고리의 다른 글
[아웃룩] 아웃룩 주소록 검색 (0) | 2015.03.30 |
---|---|
[MS-SQL] JSON 친하게 지내기 (0) | 2014.04.07 |
[VS2010] WPF/Siliverlight 에서 XAML(툴박스) 로딩 속도 문제 (0) | 2014.03.04 |
[MS-SQL] INSERT EXEC 문은 중첩될 수 없습니다. 해결 방법 (0) | 2013.10.25 |
[안드로이드] [펌] iCloud 계정의 연락처 정보를 안드로이드 스마트폰과 동기화 하는 방법 (0) | 2013.10.11 |