자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 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.

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 15766
공지 유용한 관련 사이트 관리자2 2014.03.20 54580
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97985
1673 바코드스캔이 넘느려서 질문드립니다 [1] 화현 2019.11.23 393
1672 REST API 컴포넌트 설치와 클라이언트 개발 문의드립니다 [1] 가나다 2019.11.22 320
1671 데이터스냅 한글 인코딩 질문입니다. [1] file devdev 2019.11.21 134
1670 개발자 기술자료 중 Firebase 안드로이드 앱 푸쉬 알림 - 10.3.2에서 FCM 전송 설정 - 실행시 오류 발생 [5] file 비앤케이 2019.10.19 367
1669 Fast Report 관련 문의 [1] 쿤이 2019.11.22 1076
1668 안드로이드 ForeGround Service 사용법 [1] PinkNight 2019.01.28 1152
1667 게시글 수정 부탁드립니다. [1] vane 2019.11.19 246
1666 델파이 7 사용자입니다. 델파이 XE2에서 더 좋아진 점이 무엇이고, 업그레이드가 꼭 필요한지 알고 싶습니다. [2] file 관리자 2012.07.12 11507
1665 델파이7에서 use unit에 대해서...? [2] 헨씀히포 2019.11.17 215
1664 Android 앱 배포관련 문의사항입니다 ( 64bit ) [3] 궁금한사람 2019.11.12 184
1663 데이터셋 기반 REST API 개발 중 오류에 관해 질문있습니다. [3] file 유정 2019.11.08 189
1662 2개의 package에 같은 컴퍼넌트를 뒀더니 에러가 발생합니다. 너무 답답하네요 [1] file 맛재현 2019.11.12 134
1661 델파이 XE7 폼이동 관련 질문입니다. 우우우와와 2019.11.12 124
1660 위도 경도 지역 읽어 오는 거에서요. [2] 종결자 2019.11.05 236
1659 Delphi XE버전 호환성관련 공식문서 [1] 차니아빠 2019.11.06 277
1658 FDQuery FetchOptions 문의드립니다. 딤몽 2019.11.06 136
1657 IOS 앱 환경설정관련 문의사항입니다 ( 파일 저장 ) [2] 궁금한사람 2019.11.04 367
1656 MDB 테이블 생성 관련 기초 질문입니다. [4] 초보델팡이 2019.10.30 263
1655 TValue에서 Tbytes의 데이터를 어떻게 뽑아낼수 있는지 문의 드립니다. [4] 한태수 2019.10.24 362
1654 또 질문입니다. 혹시 지역관련해서 [4] 종결자 2019.10.28 154