Microsoft MVP성태의 닷넷 이야기
.NET Window ClassName 변경 질문 드립니다. [링크 복사], [링크+제목 복사]
조회: 11879
글쓴 사람
popo
홈페이지
첨부 파일
 

안녕하세요. Window ClassName에 관련하여 질문 드립니다.

C++에서는 리소스 파일이나, 코드상으로 WindowClassName을 임의로 변경할 수 있다고 들었습니다.

C#에서 대략 찾아 보니 CreateParams클래스에 ClassName속성을 발견했습니다.

해당 속성을 오버라이드 해서 임의로 변경하였더니 잘못된 ClassName입니다. 라는 오류가 발생하는데

C#에서 임의로 ClassName을 변경하는 방법이 없는 것인지 질문 드립니다.


추가로, ClassName이 OS에서 고유 값으로 신뢰할 수 있는 값인지 궁금합니다.








[최초 등록일: ]
[최종 수정일: 2/23/2017]


비밀번호

댓글 작성자
 



2017-02-25 02시44분
ClassName은 반드시 미리 등록되어 있어야 합니다. 가령 edit box, list box, check box 등의 기본 컨트롤들은 윈도우에서 미리 제공하는 classname에 해당하기 때문에 그냥 쓸 수 있는 것입니다. (물론, WinForm/WPF에서도 자체적으로 등록한 classname이 있을 것입니다.) 즉, '임의로 classname'을 변경하는 것은 안 되고, '정의된 classname'으로 변경하는 것은 가능합니다.

따라서, classname을 정의해야 하는데 다음의 글을 참고하세요.

Registering a custom win32 window class from c#
; http://stackoverflow.com/questions/128561/registering-a-custom-win32-window-class-from-c-sharp

classname은 OS에서 고유값이라기 보다는 .exe 범위 내에서 고유값이라고 보는 것이 맞습니다. 왜냐하면 .exe 내에서 정의된 classname은 다른 프로세스에는 영향을 미치지 않기 때문입니다.

정성태

... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4878heyh...8/25/201710039프로세스의 프로세스 찾기(?) [2]
4877강준8/24/20179268SQLite journal_mode=wal 관련하여 질문드립니다. [1]
4876heyh...8/23/20179480프로세스 초기화하기 [1]
4874ho8/22/20179572파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4875ho8/23/201710548    답변글 [답변]: 파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4873kmi8/21/201711349전역 변수를 쓰지 않고 여러 군데에서 같은 변수를 공용하는 방법이 궁금합니다. [4]
4872abcd8/18/201710020프로세스를 초기화 하는 명령어도 있나요? [1]
4871kmi8/17/201711342메모리 부족으로 종료되는 현상의 여러가지 이유가 무엇인지 궁금합니다. [2]
4870heyh...8/14/201710141프로그램 실행시 중복일 때 버튼 색깔 원래대로 돌리기 [1]
4868kmi8/4/20179454string[] 에 Reverse 적용방법 질문해봅니다 [3]
4867heyh...8/4/20178933EventHandler에 관한 [1]
486610년차8/3/20179374dsoframer axframer open시 기존 오픈되어있는 엑셀을 먹어버리는 현상 [1]
4865heyh...7/31/201710942클릭원스로 배포 한 프로젝트가 끝났는지 알 수 있는 방법 [8]
4864초보자7/28/20179938DllIImport질문 드립니다. [1]
4863다연아빠7/23/201710158전역 예외처리에 대해 질문있습니다. [3]
4861라르크7/17/201715412window form 예제 따라하는 중인데 12.3 서비스 응용 프로그램에서 진행이 안됩니다. [3]파일 다운로드1
4859heyh...7/10/201710069다른 환경에서 실행하기 [1]
4858heyh...7/10/20179905Clickonce update에 관한질문입니다. [1]
4857heyh...7/7/201710553제가 여태까지 작성한 보고서입니다. [2]파일 다운로드1
4856heyh...7/6/20179267성태님 다른질문입니다. [4]
4855JP7/6/20179943Dispose 패턴 구현시 Finalize 재정의에 대한 질문드립니다. [2]
4854heyh...7/6/20179387
4853heyh...7/5/20179494성태님이 작성한대로 해봤습니다. [1]파일 다운로드1
4852김레오7/4/201711649서드파티 dll 디버깅에 대해 질문드립니다. [2]
4851김현준7/3/201710764Datagridview VirtualMode 시 GC가 계속 호출되는 현상이 이해가 안갑니다. [2]
4850heyh...7/3/201710513성태님 밑에 질문드렸던 오류입니다. [1]파일 다운로드1
... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...