2011-08-25 3 views
3

설치시 사용자 지정 작업으로 사용하는 InstallerClass에있는 msi이있는 경로를 알고 싶습니다. (NullReferenceException를 throw) C에서 installerclass 내의 msi 경로를 얻는 방법

나는 Context.ParametersSrcDirpath 같은 속성을 사용했지만, 그 값은 exsist하지 않습니다. 그 경로를 얻는 다른 방법이나 그 값이 왜 null인지 어떤 이유가 있습니까 ???

감사

+0

gettin MSI 경로에 따라 실제로 MSI가 물리적으로 존재하거나 코드가 실행되는 장소 ??? – Sumit

+0

@ Sumit : MSI가 실제로 어디에 있는지 알고 싶습니다 ... –

답변

6

당신은 VS에서 속성 창을 통해 동작 데이터의 관련 속성을 통과해야합니다, 그리고

/sourceDir="[SourceDir]\" 

그것을 검색 할 컨텍스트를 사용

string path = Context.Parameters["SourceDir"]; 
+0

vs2010의 경우 설치 프로그램 클래스 코드에서 제거해야하는 '\'을 얻을 수 있습니다. – dmihailescu

+0

내가 설정할 수있는 위치를 알려주시겠습니까? "/ sourceDir ="[SourceDir] \ "? –

0

Installer 클래스에는 많은 제한이 있으며 실패 할 때 매우 약하게 작동합니다 (허약). Windows Installer XML (WiX)의 DTF (Deployment Tools Foundation)를 사용하여 C# 관리 사용자 지정 동작을 살펴 보시기 바랍니다. 이 프로젝트 유형의 출력은 C++ equiv이며 Visual Studio 설치 및 배포 프로젝트 (이 또한 나도 사용하지 않는 것이 좋습니다)에서 사용할 수 있습니다.

관련 문제