Microsoft MVP성태의 닷넷 이야기
실행 과정과 실행파일 디버그 시 Icon변경 질문드립니다. [링크 복사], [링크+제목 복사]
조회: 1487
글쓴 사람
레드
홈페이지
첨부 파일
 
안녕하세요 이전에 MonoDevelop이라는 개발환경 질문드렸던 작성자입니다.

결과적으로 Monodevelop을 windows 에서 실행시키는건 많은 오류가 나서 빌드를 못했씁니다...그리하여 여러방면으로 알아본결과
Mono 에 파생된 Xamarin을 이용해보자 였지만 이 역시 Linux 에서는 아직까지 많은 내용이 존재하지 않았습니다(극소량) GTK도 알아봤는데 Xamarin.forms.platform GTK 라는 Nuget 에서 Plug in할수 있도록 설치하면
된다. 라고 했지만 이것 역시 windows form 을 다시 바꿔야하는 Preview가 지원하지 않아서 ? GUI가 windows form이라 좀 그랬네유
결과적으로 찾아낸것이 Eto 였습니다 . 이것은 NeGet 에서 Plug in 과 같이 설치하는 방법인데 GTK라고 검색하시면 나옵니다 . 이것은 Mono , Mac , windows 에서 GTK를 지원하며 동시 Class Platform 이 가능 하다는 것 입니다.
GTK를 지원해주어 잘 돌아갑니다 C# 으로 생성하면 hello world 가 예제인 프로젝트로 생성이 되며 No preview 와 Xaml , json도 지원하여 UI 작업은 할수가 있었습니다. // 해본사항 알려달라고 하시길래 적어봤습니다 도움되셨으면 좋겠네요


//////////각설하고
혹시 실행파일 나오는 exe파일에 대한 아이콘 변경을 프로젝트 속성 -> 아이콘 매니페스트 설정이 아닌 직접 소스코드로 작성해서 변경하고 싶은데 방법이 있을까요? vs2008 windows form 응용프로그램으로 만든 실행파일입니다.






[최초 등록일: ]
[최종 수정일: 5/21/2019 ]


비밀번호

댓글 쓴 사람
 



2019-05-21 06시39분
Form 타입을 보면 "Icon"이라는 속성이 있습니다.

this.Icon = new Icon("test.ico");
정성태
2019-05-22 09시10분
[ㅎ] 그 부분도 찾아 보았는데요 icon이라는 네임스페이스는 form과 관련이 있고 실행파일에 해당하는 icon은 리소스 영역을 건드려야 한다고 보았습니다.

해당 값을 넣으면 form에 대한 icon만 변경되며 실행파일 자체는 변경되지 않습니다 ㅠ...
[손님]
2019-05-22 09시37분
아... 런타임에 변경하고 싶은 것이 아니라 그냥 단순히 exe 파일의 res를 변경하고 싶은 거군요.

그건 방법이 없습니다. 순수하게 icon 파일을 리소스에 넣어두어야 하고 윈도우가 그걸 찾을 수 있게 해야 합니다. 왜냐하면, 그 아이콘은 탐색기 같은 프로그램에서 보여주는 것이기 때문에 해당 프로그램이 실행되는 기회조차 갖지 못하기 때문입니다.

참고로, EXE PE 파일을 분석해 리소스를 찾아 외부에서 변경하는 방법은 있습니다. 예를 들어 다음의 프로그램이 그런 식으로 만들어진 것입니다.

How to Modify the Icon of an EXE File
; https://www.howtogeek.com/75983/stupid-geek-tricks-how-to-modify-the-icon-of-an-.exe-file/

정성태
2019-05-22 10시21분
[ㅎ] Windows form프로젝트를 하나 만들고 그 프로젝트 속성에 보면 응용프로그램 탭에서 나오는 리소스 부분에 매니페스트 포함 하여 icon을 추가할수 있는 영역이 있습니다. 그리하여 제 생각에는 이부분을 무언가 코드로 작성이 되있어서
빌드 했을 시 이 부분을 컴파일하여 만들어 주는 부분이 있다고 생각했는데 그 부분을 건드릴 수 없다 이 말씀이신가요?


[손님]
2019-05-22 01시23분
그 부분을 처리해 주는 것이 Resource Compiler라는 것입니다. 코드로 제어하는 것이 아닙니다.
정성태

1  2  3  4  [5]  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5310아스파넬3/15/20204701초에 5회 함수호출 제한 관련 질문입니다. [1]
5309하태3/11/20201043안녕하십니까. c# Winform UI 질문드리겠습니다! [3]파일 다운로드1
5308질문3/9/2020573Window XP SP3 32bit 환경(Window Update 모두 완료)에서 .Net Framework 4.0.3 으로 빌드된 .dll 파일 gacutil.exe 등록 관련 문의 [5]
5306개발자3/9/2020551C#을 통해 인터넷 접속 가능한 이더넷을 선택할 수 있는지요? [1]
5305JaeSSG3/9/2020526RAW파일 생성 질문드립니다 [8]파일 다운로드1
5303궁금하당2/27/2020696C#에서 C++ DLL읽기 (아래 글쓴이) [1]
5302궁금하당2/27/20201118C#에서 C++ DLL호출 ('PInvokeStackImbalance') [4]파일 다운로드1
5301질문합니다.2/27/2020601소켓 대량 데이터 디자인 문의 [1]
5300nalsandori2/27/2020515vs2013에서 BinaryFormatter Serialize 후 vs2015에서 Deserialize시 예외 발생 [3]파일 다운로드1
5298질문2/26/2020518.lic 파일에 대해 질문 있습니다. [9]
5297임한승2/26/2020284vs2013에서 BinaryFormatter Serialize 후 vs2015에서 Deserialize시 예외 발생 건 [1]파일 다운로드1
5295나그네2/25/2020614클라이언트 PC 정보 조회관련.. [2]
5294닷넷초보ㅠ2/25/2020441윈폼으로 socket통신프로그램 만든후 release로 디버깅한 실행파일을 다른컴퓨터에서 실행할때 반응이없어요 [1]
5293탱코2/21/2020628검색을 하고 싶은데 어떻게 검색을 해야 할 지 모르겠습니다. [1]
5292아부리2/19/2020574XingApiNet 관련 질문 [3]
5291지현명2/15/2020728JsonConvert.Serialize 하고 Deserialize 할때 간헐적으로 한글 깨짐 현상 문의 합니다. [3]
5290베도빈2/15/2020392직접 제작한 사용자 정의 콘트롤 DLL, 실행파일에 포함시켜 배포할 수 있을까요? [1]
5288김성배2/14/2020586c# 참조추가 기능에서 DirectX 참조가 보이지 않아요.. DircetX 11 은 설치 되어 있습니다. [1]
5287C# 초보개발자2/14/2020611프로그램 실행 질문 드립니다. [4]파일 다운로드1
5286gongs2/3/20201976윈도우 배율 및 레이아웃에 대한 질문입니다. [3]
5285강성욱1/27/2020569작업관리자에 표시되는 스레드 개수와 프로그램 내 스레드 개수 일치 [1]
5284이상준1/15/20202414출력창에 '스레드가 종료되었습니다' 문구 문의 [2]파일 다운로드1
5282봉봉이 1/13/20201166소켓 비동기 ReceiveTimeOut 구현 [9]파일 다운로드1
5281봉봉이 1/13/2020700소켓 비동기 ReceiveTimeOut 구현 [2]
5280sdd1/8/2020639데이터 저장, 배치파일 관련하여 질문드립니다. [4]
5279김창한12/27/2019947dsoframer ocx [3]
1  2  3  4  [5]  6  7  8  9  10  11  12  13  14  15  ...