2009-06-23 2 views
5

clickonce를 사용하여 게시하고 싶은 C++ 콘솔 응용 프로그램이 있습니다.일반 C++ 실행 파일에서 클릭이 가능합니까?

mageui.exe 도구를 실행하고 응용 프로그램 매니페스트를 만들기 위해 실행 파일 및 종속 파일을 가져 오면 app.exe를 시작점으로 설정할 수 없습니다. 진입 점을 설정할 수는 있지만 선을 클릭하고 저장하려고하면 대화 상자가 지워지고 유효한 진입 점이 없다는 불만이 있습니다.

어쨌든 저장하면 결과 매니페스트에서 entryPoint가 비어 있습니다. 유효한 입력 지점이 없으므로 clickonce가 실패합니다.

나는 다음과 같이 수동으로 진입 점을 만드는 시도했다 :

<entryPoint> 
    <assemblyIdentity 
     type='win32' 
     name='My App' 
     version='0.9.1.0' 
     processorArchitecture='msil' 
     language='en-US'/> 
    <commandLine 
     file="app.exe" 
     parameters="run"/> 
    </entryPoint> 

중 하나가 작동하지 않습니다.

+0

또한 x86을 사용하여 성공적으로 설정 한 processorArchitecture로 시도했습니다. – Jon

답변

3

"어셈블리 ID"와 프로세서 아키텍처를 MSIL로 설정하는 동안 엔트리 포인트가 일종의 .NET 어셈블리에 있다고 말하는 것처럼 보입니다.

불행히도, 대략적인 검색에서 clickonce로 관리되지 않는/기본 응용 프로그램을 배포 할 수없는 것으로 보입니다. 진입 점을 관리해야합니다.

here과 같이 심을 만들 수 있습니다.

0

앱을 관리해야합니다. ClickOnce는 앱에서 수행 할 수있는 작업을 제한하기 위해 CLR에 내장 된 보안 시스템을 사용합니다. 네이티브 코드에는 그와 같은 것이 없습니다.

0

동의하지 않음, see this article. MFC 응용 프로그램에서 작동하는 경우 확실하게 다른 관리되지 않는 C++ 응용 프로그램에서도 작동합니다. 해결 방법은/clr로 컴파일 된 소스 파일을 포함시키는 것입니다. (C++은 MSIL로 컴파일 될 수 있음을 기억하십시오.) This article from the MSDN seems to agree too.