새로운 글
새로운 덧글

자유롭게 질의 및 응답을 할 수 있는 게시판이며 어느 누구도 답변을 달아야만 하는 의무는 없습니다. 
  • 제품설치/등록/제품 오류 문의: 설치/등록 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.

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2018.8~2018.11 관리자 2015.01.22 6034
공지 유용한 관련 사이트 관리자2 2014.03.20 43269
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 84878
2278 [문의]delphi 10.2.3 도쿄에서 JEDI 패키지 설치시 에러 [1] 데르파이 2018.06.07 55
2277 RAD Server [EMS] 배포관련 오류 [1] 마눠니 2018.06.10 51
2276 Delphi10.2 용 평가판에서 BDE Install 프로그램(dclbde***.bpl) [1] hihee 2018.06.07 54
2275 iOS 컴파일 오류 문의 [1] file 생각 2018.06.11 44
2274 컴포넌트 아이콘 표시가 안나올때 file 건들다맞지 2018.06.14 34
2273 DragMode가 dmAutomatic일 때, 클릭 이벤트 작동하지 않음 VT 2018.06.12 16
2272 FDMemTable 문의입니다. 최민철 2018.06.12 22
2271 안드로이드 기반에서 mysql 데이터 베이스로 바로 접속하는 방법 없나용? [1] 김종찬 2018.05.30 74
2270 XE 10.1 Berlin Android SDK Manager 를 찾을 수가 없습니다. [2] jongik 2018.05.28 57
2269 현제 Delphi 10.2 트라이얼 테스트중입니다. [1] 이룬 2018.06.06 47
2268 Delphi10.2 평가판 사용자입니다. [2] 광개토태왕 2017.08.25 134
2267 마이그레이션중 LoadLibrary 문제 확인부탁드립니다. file 최진현 2018.06.05 26
2266 삼성폰에서 TEdit 엔터키를 입력하면 앱이 죽어 버립니다. 파이어버드 2018.05.31 46
2265 delphi 10.2.3 도쿄 다국어 관련 질문입니다. [8] file 신우 2018.05.28 110
2264 ftps를 구현하고 싶습니다 [1] 맛재현 2018.05.30 48
2263 delphi 10.2 Active X 등록 방법 [1] 건들다맞지 2018.05.30 52
2262 uses permission으로 설정한 권한 런타임시 허용 대화상자 띄우는 방법이 궁금합니다. [1] 김태윤 2018.05.24 77
2261 10.2 도쿄 안드로이드 에뮬레이터 세팅 관련 [1] 스머프 2018.05.28 56
2260 C++ builder 10.2 에서 Android 에 쓰래드 사용시 종료 문제 [1] 쿠리 2018.05.25 46
» 스피드버튼으로 한글 입력 되도록 할 때 Delphi7 은 이상이 없는데 XE10 은 한글이 쪼개집니다. [2] 막스뮐러 2018.05.09 134



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