Window/WPF2018. 2. 21. 22:26

Visual Studio 2017에서 .net framework 4.0 버전의 프로그램을 

clickone로 배포하기 위해서는 필수구성요소에 포함시켜야 하는데요.

우선 포함시켜야 하는 요소들의 Package가 필요합니다.


검색해보니 정리가 잘된 곳이 있더군요.

https://git.chemsorly.com/Docker/Msbuilder/tree/master/Files/Bootstrapper/Packages


복사할 경로는 다음과 같습니다.

C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages


XP 일 경우 지난 포스팅 참고

http://shine10e.tistory.com/132?category=330666



'Window > WPF' 카테고리의 다른 글

Custom Button  (2) 2016.01.29
Virtual Keyboard ( Hangul )  (1) 2015.11.23
Pixel Shader Effect in WPF  (0) 2015.02.26
[ WPF ] Word Cloud  (0) 2014.02.23
[ WPF ] VisualTree FindChild  (0) 2012.08.17
Posted by 열ㅇl
Languages/C#2017. 11. 30. 14:43

젠킨스를 통해 ClickOnce 배포를 AWS S3에 올리는 설정에 대해서 포스팅합니다.

젠킨스가 설치되었고 MSBuild와 S3 설정과 기본 설정들이 완료된 상태에서 시작합니다.




1. 우선 설치된 nuget 경로를 통해 포함된 package 들을 restore 합니다.

nuget: https://www.nuget.org/downloads


2. 구성하시는 환경에 맞게 MSBuild에 필요한 파라메터를 설정합니다.

Job Notifications 메뉴에서 필요한 매개변수를 설정합니다.



EnableMutipleInstall 은 같은 프로그램을 Configuration 별로 설치할 수 있도록 프로젝트 속성값에 설정한 옵션입니다.

Configuration 에 따라 AssemblyName 과 ProductName 을 변경하면 됩니다.

프로젝트의 csproj 파일을 편집해서 추가하였습니다.


서명에 사용하는 인증서 설정을 MSBuild 나 SignTool 을 사용해서 command 에서 하려고 했으나 제대로 되지 않았습니다. 

그래서 VisualStudio에서 설정하고 MSBuild가 설치된 OS에도 동일한 인증서와 같은 버전의 VisualStudio 를 설치하여 해결하였습니다.


3. S3 설정을 합니다.


추가

- VS2017일 경우 MSBuild 경로

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin


MSB4044 오류 발생시 Jenkins 서비스가 사용자 계정으로 로그인 되어 있는지 확인



'Languages > C#' 카테고리의 다른 글

ClickOnce Custom Publish Page  (0) 2016.12.09
ClickOnce Custom Bootstrap ( Visual C++ redistributable )  (2) 2016.02.23
ClickOnce Custom BootStrapper  (0) 2015.12.01
[ C# ] Change Audio Device  (0) 2013.08.06
[ C# ] FTP  (4) 2013.02.26
Posted by 열ㅇl
Languages/C#2016. 12. 9. 18:31

CI를 젠킨스로 하게 되면서 빌드 뿐만 아니라 배포까지 넣게 되었는데 VisualStudio 에서 배포 옵션으로 설정한 배포 웹페이지는 msbuild 로는 생성이 되지 않아서 자료를 찾던 중 커스텀하게 만들 수 있는 방법을 찾게 되었습니다.


원문: https://wallism.wordpress.com/2009/12/08/clickonce-creating-publish-page-from-msbuild/


간단하게 요약하면


1. 템플릿으로 사용할 html 을 만들어 프로젝트에 포함합니다. ( 프로젝트내 Publish 폴더를 만들어 포함했습니다. )

   한글로 변환한 템플릿 첨부합니다.

       

index.template.html


2. .targets 파일을 만들어 프로젝트에 포함합니다. ( Publish.targets 이름으로 만들었습니다. )


3. nuget 으로 MSBuildTasks를 설치합니다.

4. 프로젝트를 편집으로 바꿔서 만든 .targets 파일을 포함합니다. (맨 밑줄에 넣었습니다. )


5. msbuild로 테스트 해보면 다음과 같이 생성됩니다.


msbuild /t:Publish /p:Configuration=Release



'Languages > C#' 카테고리의 다른 글

Jenkins를 통해 AWS 에 ClickOnce 배포  (0) 2017.11.30
ClickOnce Custom Bootstrap ( Visual C++ redistributable )  (2) 2016.02.23
ClickOnce Custom BootStrapper  (0) 2015.12.01
[ C# ] Change Audio Device  (0) 2013.08.06
[ C# ] FTP  (4) 2013.02.26
Posted by 열ㅇl