원격 데스크톱 연결이 닫힌 상태에서 원격 서버에서 키보드 리턴 키 보내기

Mrgucci

웹 페이지에서 일부 JavaScript를 실행하는 간단한 봇인 WinForms WebView2 프로젝트가 있습니다. JS를 사용하여 웹 페이지의 요소를 클릭하고 파일을 다운로드하고 있습니다. 웹 사이트에서 "페이지에서 나가시겠습니까?"라는 메시지가 표시됩니다. 대화 상자에서 웹 페이지를 종료하고 파일을 다운로드 할 것인지 확인하기 위해 RETURN 키보드를 눌러 보내려고합니다.

Windows 작업 스케줄러를 사용하여 자동으로 실행하고 싶습니다. 이 방법은 서버에 원격으로 연결되어 있고 창이 최소화되지 않는 한 작동합니다. 그러나 서버에 원격으로 연결되어 있지 않으면 Enter 키를 누르면 반환되고 오류가 발생합니다.

이 코드를 SendKeys로 시도했습니다.

//Get Webview proccess
Process p = Process.GetProcessesByName("msedgewebview2").FirstOrDefault();
if (p != null)
{
    IntPtr h = p.MainWindowHandle;
    SetForegroundWindow(h);
    printToTextbox("pressed ENTER key");
    SendKeys.SendWait("{ENTER}");
    await checkDownloadFinished();
}

봇을 시작한 다음 원격 세션을 종료합니다. 내가 돌아 왔을 때 프로그램이 도달했을 때이 오류가 발생합니다.SendKeys.SendWait("{ENTER}");

System.ComponentModel.Win32Exception: 'Access is denied'

또한 Nuget 패키지 InputSimulator를 시도했습니다.

Process p = Process.GetProcessesByName("msedgewebview2").FirstOrDefault();
if (p != null)
{
    IntPtr h = p.MainWindowHandle;
    SetForegroundWindow(h);
    printToTextbox("pressed ENTER key");
    InputSimulator s = new InputSimulator();
    s.Keyboard.KeyPress(WindowsInput.Native.VirtualKeyCode.RETURN);
    await checkDownloadFinished();
}

동일한 절차에 따라 봇을 시작하고 원격 세션을 종료합니다. 돌아 오면 다음 오류가 발생합니다.

System.Exception: 'Some simulated input commands were not sent successfully. The most common reason
 for this happening are the security features of Windows including User Interface Privacy Isolation
 (UIPI). Your application can only send commands to applications of the same or lower elevation.
 Similarly certain commands are restricted to Accessibility/UIAutomation applications. Refer to the
 project home page and the code samples for more information.'

키 입력을 보내는 다른 C # 호환 방법이 있습니까? 아니면 대화 상자가 나타나지 않도록하는 방법이 있습니까? 감사합니다!

폴 박

당신은 잘못하고있어 :-)

살펴보아야합니다 : CoreWebView2.ScriptDialogOpening Event .

scriptdialogopening과의있는 EventArgs가 Accept()클릭 방법을 Ok대화 상자에.

eventargs 링크는 다음과 같습니다. CoreWebView2ScriptDialogOpeningEventArgs

이제 SendKeys.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

원격 헤드리스 서버에서 원격 데스크톱 가져 오기

분류에서Dev

원격 데스크톱의 키보드 레이아웃

분류에서Dev

아이스 서버가 포함 된 경우 WebRTC가 연결 상태에서 멈춤 (LAN을 통해서도 문제를 일으키는 원격 후보)

분류에서Dev

다른 원격 데스크톱 세션 내의 원격 데스크톱 키보드 바로 가기

분류에서Dev

여러 원격 데스크톱 세션에 명령 보내기

분류에서Dev

원격 데스크톱 연결에서 이전 연결 제거

분류에서Dev

Mac-> Windows 원격 데스크톱 키보드 [독일어 레이아웃]

분류에서Dev

Mac-> Windows 원격 데스크톱 키보드 [독일어 레이아웃]

분류에서Dev

Windows 원격 데스크톱 키보드 매핑 문제

분류에서Dev

이상한보기를 보여주는 Ubuntu에서 CentOS7 로의 원격 데스크톱 VNC

분류에서Dev

원격 데스크톱 연결이 연결되지 않음-보안 패키지가 없습니다.

분류에서Dev

원격 서버에서 .NET 애플리케이션으로 신호 보내기

분류에서Dev

원격 서버에서 파일 스트림 보내기 SecurityException throw

분류에서Dev

원격 데스크톱을 통해 LightScribe 드라이브를 VM에 연결

분류에서Dev

Windows 원격 데스크톱 Android 앱에서 블루투스 마우스 및 키보드를 사용하십니까?

분류에서Dev

원격 데스크톱 허용이 보안에 미치는 영향

분류에서Dev

원격 데스크톱 연결 해제 세션 단축키

분류에서Dev

키 입력 Windows 원격 데스크톱 연결?

분류에서Dev

원격 데스크톱 (RDP)이 원격 PC에서 비디오를보기에 충분히 빠르지 않은 이유는 무엇입니까?

분류에서Dev

원격 서버로 정보 보내기

분류에서Dev

Citrix Receiver에서 원격 키보드 레이아웃 강제 적용

분류에서Dev

Windows 7에서 느린 원격 데스크톱 연결

분류에서Dev

Windows 7 Home Premium에서 원격 데스크톱 연결 수락

분류에서Dev

어디에서 연결된 원격 데스크톱?

분류에서Dev

원격 데스크톱 연결을 통해 호스트의 스마트 카드 리더에 액세스

분류에서Dev

원격 데스크톱 연결 (MacBook Pro에서 OSX에서 Windows 7로 연결)을 사용할 때 해시 키를 찾을 수 없습니까?

분류에서Dev

Python의 Elasticsearch 패키지로 원격 Elasticsearch 서버에 연결

분류에서Dev

원격 드라이브에서 이미지 미리보기

분류에서Dev

원격 드라이브에서 이미지 미리보기

Related 관련 기사

  1. 1

    원격 헤드리스 서버에서 원격 데스크톱 가져 오기

  2. 2

    원격 데스크톱의 키보드 레이아웃

  3. 3

    아이스 서버가 포함 된 경우 WebRTC가 연결 상태에서 멈춤 (LAN을 통해서도 문제를 일으키는 원격 후보)

  4. 4

    다른 원격 데스크톱 세션 내의 원격 데스크톱 키보드 바로 가기

  5. 5

    여러 원격 데스크톱 세션에 명령 보내기

  6. 6

    원격 데스크톱 연결에서 이전 연결 제거

  7. 7

    Mac-> Windows 원격 데스크톱 키보드 [독일어 레이아웃]

  8. 8

    Mac-> Windows 원격 데스크톱 키보드 [독일어 레이아웃]

  9. 9

    Windows 원격 데스크톱 키보드 매핑 문제

  10. 10

    이상한보기를 보여주는 Ubuntu에서 CentOS7 로의 원격 데스크톱 VNC

  11. 11

    원격 데스크톱 연결이 연결되지 않음-보안 패키지가 없습니다.

  12. 12

    원격 서버에서 .NET 애플리케이션으로 신호 보내기

  13. 13

    원격 서버에서 파일 스트림 보내기 SecurityException throw

  14. 14

    원격 데스크톱을 통해 LightScribe 드라이브를 VM에 연결

  15. 15

    Windows 원격 데스크톱 Android 앱에서 블루투스 마우스 및 키보드를 사용하십니까?

  16. 16

    원격 데스크톱 허용이 보안에 미치는 영향

  17. 17

    원격 데스크톱 연결 해제 세션 단축키

  18. 18

    키 입력 Windows 원격 데스크톱 연결?

  19. 19

    원격 데스크톱 (RDP)이 원격 PC에서 비디오를보기에 충분히 빠르지 않은 이유는 무엇입니까?

  20. 20

    원격 서버로 정보 보내기

  21. 21

    Citrix Receiver에서 원격 키보드 레이아웃 강제 적용

  22. 22

    Windows 7에서 느린 원격 데스크톱 연결

  23. 23

    Windows 7 Home Premium에서 원격 데스크톱 연결 수락

  24. 24

    어디에서 연결된 원격 데스크톱?

  25. 25

    원격 데스크톱 연결을 통해 호스트의 스마트 카드 리더에 액세스

  26. 26

    원격 데스크톱 연결 (MacBook Pro에서 OSX에서 Windows 7로 연결)을 사용할 때 해시 키를 찾을 수 없습니까?

  27. 27

    Python의 Elasticsearch 패키지로 원격 Elasticsearch 서버에 연결

  28. 28

    원격 드라이브에서 이미지 미리보기

  29. 29

    원격 드라이브에서 이미지 미리보기

뜨겁다태그

보관