Microsoft MVP성태의 닷넷 이야기
.NET Window ClassName 변경 질문 드립니다. [링크 복사], [링크+제목 복사],
조회: 19027
글쓴 사람
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은 다른 프로세스에는 영향을 미치지 않기 때문입니다.

정성태

... 91  92  93  94  95  96  [97] 
NoWriterDateCnt.TitleFile(s)
29정성태12/17/200310837    답변글 [답변]: IE에서 submit 버튼을 누를때 발생하는 이벤트를 받을수 있나요?
24임영택9/14/200310907실행중인 DLL과 통신하는 방법?
25임영택9/15/200311044    답변글 [답변]: 자답(해결했습니다)
21박용운7/29/200310592잠긴파일에서...
22박용운7/30/200312018    답변글 왜 MoveFileEx가 먹히지를 않을까요?
23박용운7/30/200311946        답변글 [자답]
19김진호7/28/200311026atl 디버깅
20정성태7/29/200310849    답변글 [답변]: atl 디버깅
17박용운7/23/200311325[질문] 보안모듈? [1]
13박용운7/23/200311905"IE BHO 개체를 개발할 때, 인터넷 익스플로러가 아닌 탐색기에서 활성화 되는 문제 해결" 문서를 읽고...
14정성태7/23/200310745    답변글 [답변]: "IE BHO 개체를 개발할 때, 인터넷 익스플로러가 아닌 탐색기에서 활성화 되는 문제 해결" 문서를 읽고...
16박용운7/23/200311342        답변글 [답변]: [답변]: "IE BHO 개체를 개발할 때, 인터넷 익스플로러가 아닌 탐색기에서 활성화 되는 문제 해결" 문서를 읽고...
7박용운7/21/200313018HTTP 프로토콜로 통신하는법? [5]
6박용운7/21/200313380POST값을 못읽는 사이트는? [1]
1박용운7/18/200315302[질문] IWebBrowser2로 POST값 구하기 [4]파일 다운로드1
... 91  92  93  94  95  96  [97]