새로운 글
새로운 덧글

자유롭게 질의 및 응답을 할 수 있는 게시판이며 어느 누구도 답변을 달아야만 하는 의무는 없습니다. 
  • 제품설치/등록/제품 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------

안녕하세요,  

 

동일한 소스로 테스트를 해봤습니다.  아주 간단한 소스인데..첨에 XE10 에서 안되길래

다른 방법(후킹이다 뭐다) 으로 해도 잘 안돼서.. Delphi7 으로 컴파일 해보니..잘 됩니다. ㅠㅠ

후킹으로 하는 거든, 단순한 키보드 이벤트로 하든  Delphi7 은 잘됩니다.

 

즉, [김] 을 스피드버튼으로 입력 시키면  XE10 에서는 ㄱ ㅣㅁ  이라고 나오고, Delphi7 에서는 [김] 제대로 나옵니다.

 

이거 때문에 며칠을 삽질하다가....도움 요청합니다.

 

 

 unit Unit6;

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, Buttons;

 

type

  TForm1 = class(TForm)

    Memo1: TMemo;

    SpeedButton1: TSpeedButton;

    SpeedButton2: TSpeedButton;

    SpeedButton3: TSpeedButton;

    procedure SpeedButton1Click(Sender: TObject);

    procedure SpeedButton2Click(Sender: TObject);

    procedure SpeedButton3Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure SimulateKeystroke(VirtualKey: byte;  ScanCode: DWORD);

begin

  // keybd_event 함수를 사용한 키 조합(down, up) 발생

  keybd_event(VirtualKey, // 키의 down

              ScanCode,  0,  0);

  keybd_event(VirtualKey, // 키의 up

              ScanCode, KEYEVENTF_KEYUP,  0);

end;

 

procedure SimulateKeyDown(Key : byte);

begin

  // keybd_event 함수를 사용한 키 down 발생

  //keybd_event(Key, 0, 0, 0);

  keybd_event(Key,MapVirtualkey(key, 0),0, 0);

end;

 

procedure SimulateKeyUp(Key : byte);

begin

  // keybd_event 함수를 사용한 키 up 발생

  //keybd_event(Key, 0, KEYEVENTF_KEYUP, 0);

  keybd_event(Key,MapVirtualkey(Key, 0),KEYEVENTF_KEYUP,0);

end;

 

procedure TForm1.SpeedButton1Click(Sender: TObject);

begin

     SimulateKeyDown(Ord('R'));

     SimulateKeyUp(Ord('R'));

end;

 

procedure TForm1.SpeedButton2Click(Sender: TObject);

begin

     SimulateKeyDown(Ord('L'));

     SimulateKeyUp(Ord('L'));

end;

 

procedure TForm1.SpeedButton3Click(Sender: TObject);

begin

     SimulateKeyDown(Ord('A'));

     SimulateKeyUp(Ord('A'));

end;

 

end.

번호 제목 글쓴이 날짜 조회 수
공지 [연말 이벤트] 개발자 Q&A 게시판을 가장 잘 활용해주신 분 상품 증정 관리자 2018.11.12 22
공지 [프로그래밍 강의] 2018.10~2018.12 관리자 2015.01.22 6125
공지 유용한 관련 사이트 관리자2 2014.03.20 43378
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 84947
2272 DragMode가 dmAutomatic일 때, 클릭 이벤트 작동하지 않음 VT 2018.06.12 21
2271 FDMemTable 문의입니다. 최민철 2018.06.12 27
2270 안드로이드 기반에서 mysql 데이터 베이스로 바로 접속하는 방법 없나용? [1] 김종찬 2018.05.30 90
2269 XE 10.1 Berlin Android SDK Manager 를 찾을 수가 없습니다. [2] jongik 2018.05.28 68
2268 현제 Delphi 10.2 트라이얼 테스트중입니다. [1] 이룬 2018.06.06 62
2267 Delphi10.2 평가판 사용자입니다. [2] 광개토태왕 2017.08.25 145
2266 마이그레이션중 LoadLibrary 문제 확인부탁드립니다. file 최진현 2018.06.05 31
2265 삼성폰에서 TEdit 엔터키를 입력하면 앱이 죽어 버립니다. 파이어버드 2018.05.31 56
2264 delphi 10.2.3 도쿄 다국어 관련 질문입니다. [8] file 신우 2018.05.28 114
2263 ftps를 구현하고 싶습니다 [1] 맛재현 2018.05.30 58
2262 delphi 10.2 Active X 등록 방법 [1] 건들다맞지 2018.05.30 67
2261 uses permission으로 설정한 권한 런타임시 허용 대화상자 띄우는 방법이 궁금합니다. [1] 김태윤 2018.05.24 103
2260 10.2 도쿄 안드로이드 에뮬레이터 세팅 관련 [1] 스머프 2018.05.28 75
2259 C++ builder 10.2 에서 Android 에 쓰래드 사용시 종료 문제 [1] 쿠리 2018.05.25 53
» 스피드버튼으로 한글 입력 되도록 할 때 Delphi7 은 이상이 없는데 XE10 은 한글이 쪼개집니다. [2] 막스뮐러 2018.05.09 165
2257 GCM 프로그래밍 어떻게??? [2] netpcc26 2018.05.11 108
2256 TButton에 TImage를 Child로 만들었는데.. [1] 미크 2018.05.16 43
2255 FMX REST 오류에 대해 문의 드립니다. [2] 호홍호 2018.05.12 116
2254 iOS 에서 Bluetooth Low Energy 검색이 안되는데, 저만의 문제인가요? [1] 지병철 2018.05.11 52
2253 IBTOGO INSTALL시 에러. file 미크 2018.05.15 43



광고 모듈이 설치되어 있지 않아 실행을 중단합니다..