Im C#에서 keybd_event win API 호출을 사용하고 alt + f4, alt + tab과 같은 특수 키 누르기를 시뮬레이트하고 싶습니다. 내 프로그램은 shift + p, altgr + w 및 탭의 간단한 사용과 같은 "간단한"키 누름을 처리 할 수 있습니다. 또는 입력도 작동하지만 두 개의 특수 버튼이있을 때 (특수 버튼의 경우 alt, shift, ctrl 또는 기능 버튼을 의미합니다.) 그것은 아무것도하지 않는 것 같습니다. 내 프로그램은 여러 가지 양식을 원격 데스크톱을 통해 처리해야합니다. 즉,이 keybd_event 호출을 사용하는 이유는 무엇입니까? 예를 들어 alt + f4는 로컬로도 작동하지 않습니다 (메모장에서 테스트 중이지만이 명령으로 닫을 수는 없습니다). 누구든지 내가 뭘 잘못하고 있는지 생각해? 그것들을 작동시킬 수 있습니까? 사전에keybd_event를 한 번에 두 개 이상의 키 누름을 처리하는 방법?
감사합니다!
편집 : 나는 내가 모든 승리의 API 호출을 저장하는 같이 DllImport 클래스를 만들었습니다
. 또한, 예를 들어, 일부 도우미 방법이 있습니다
private void PressAlt()
{
DLLImport.keybd_event(0xA0, 0x38, 0, 0);
}
private void ReleaseAlt()
{
DLLImport.keybd_event(0xA0, 0x38, 0x0002, 0);
}
별도의 방법이 사용 탭
, 메신저 :
DLLImport.keybd_event(0x09, 0x0f, 0, 0); //press tab
...
DLLImport.keybd_event(0x09, 0x0f, 0x0002, 0); //release tab
그리고 메신저 지금 테스트 다음을 포함합니다 :
PressAlt();
PressSpecial("tab");
ReleaseSpecial("tab");
ReleaseAlt();
일부 소스 코드를 표시 할 수 있습니까? 보이지 않는 문제를 확인하는 것은 어렵습니다. –
나는 나의 질문을 편집했다 (나의 사과, 나는 아직도이 포럼에서 새로운). – Daniel