Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[15633] Re:블럭이 걸리는 이유가 뭘까요? SendMessage(HWND_BROADCAST
정영훈 [allinux] 1866 읽음    2016-01-25 20:25
sendmessage 와 postmessage 차이에 대해 알아보시기 바랍니다.
일단 응답대기 문제는 postmessage 를 사용하면 해결은 되나 서로간 차이가 있으므로 숙지할 필요가 있습니다.

예성곤 님이 쓰신 글 :
: 아래의 소스코드로 컴파일은 완료되었으나...
: 실행시키면
: 어느 순간부터
: SendMessage(HWND_BROADCAST, WM_WININICHANGE, 0, Longint(@Device));
: 의 응답이 없습니다.
:
: 어떤 문제인가요?
:
: 사용 OS는 Windows7 32bit 입니다.
:
:
:
: /// 원 소스코드
:
: procedure SetDefaultPrinter(PrinterName: string);
: var
:   I: Integer;
:   Device: PChar;
:   Driver: PChar;
:   Port: PChar;
:   HdeviceMode: THandle;
:   aPrinter: TPrinter;
: begin
:   Printer.PrinterIndex := -1;
:   GetMem(Device, 255);
:   GetMem(Driver, 255);
:   GetMem(Port, 255);
:   aPrinter := TPrinter.Create;
:   try
:     for I := 0 to Printer.Printers.Count - 1 do
:     begin
:       if Printer.Printers[i] = PrinterName then
:       begin
:         aprinter.PrinterIndex := i;
:         aPrinter.getprinter(device, driver, port, HdeviceMode);
:         StrCat(Device, ',');
:         StrCat(Device, Driver);
:         StrCat(Device, Port);
:         WriteProfileString('windows', 'device', Device);
:         StrCopy(Device, 'windows');
:         SendMessage(HWND_BROADCAST, WM_WININICHANGE, 0, Longint(@Device));
:       end;
:     end;
:   finally
:     aPrinter.Free;
:   end;
:   FreeMem(Device, 255);
:   FreeMem(Driver, 255);
:   FreeMem(Port, 255);
: end;

+ -

관련 글 리스트
15632 블럭이 걸리는 이유가 뭘까요? SendMessage(HWND_BROADCAST 예성곤 1807 2016/01/25
15633     Re:블럭이 걸리는 이유가 뭘까요? SendMessage(HWND_BROADCAST 정영훈 1866 2016/01/25
15635         Re:Re:블럭이 걸리는 이유가 뭘까요? SendMessage(HWND_BROADCAST 예성곤 2110 2016/01/26
15634         Re:Re:블럭이 걸리는 이유가 뭘까요? SendMessage(HWND_BROADCAST 예성곤 2115 2016/01/25
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.