development

Sysinternals의 Portmon : 오류 2

big-blog 2020. 12. 25. 22:43
반응형

Sysinternals의 Portmon : 오류 2


내가 로컬 포트에 연결하려고하면 컴퓨터 -> 연결 지역 , 사용 Portmon의 V 3.02, 나는 오류 메시지, 받고 있어요. 오류 2 작은 오류 대화 상자를 :

여기에 이미지 설명 입력

관리자 권한으로 도구를 실행합니다 (그렇지 않으면 오류 6이 표시됨).

그건 그렇고 이것은 Windows 7 x64입니다. 32 비트에서는 Windows 7 x86에서 제대로 작동합니다. 이 문제를 어떻게 해결할 수 있습니까?


Sysinternals의 Portmon은 Windows 32 비트 버전에서만 작동합니다. 64 비트를 지원하지 않습니다 (드라이버가 서명되지 않았을 수 있음).

Portmon 홈페이지에서 :

  • 실행 :
    • 클라이언트 : Windows XP (32 비트) 이상 (32 비트).
    • 서버 : Windows Server 2003 (32 비트) 이상 (32 비트).

Windows 탐색기에서 마우스 오른쪽 버튼을 클릭 portmon.exe-> 속성 선택 -> 호환성 탭을 클릭하고 Windows XP 호환 모드에서 실행합니다. Windows 7 64 비트에서와 같이 잘 작동합니다.


"오류 2"는 "지정된 파일을 찾을 수 없습니다", 즉 필요한 DLL 파일을 찾을 수 없습니다.

원래 네트워크 위치에서 Portmon을 실행하려고 할 때이 오류가 발생했습니다. 이로 인해 보안 신뢰가 깨져 Portmon이 신뢰할 수 없게됩니다 (또는 검색 경로가 엉망이 될 수 있습니다).

Windows 7 64 비트 사본에서 Microsoft Dependency Walker (depends.exe)는 PORTMSYS.SYS (Portmon.exe에 의해 생성 /로드 된 파일)가 ci.dll, clfs.sys, hal.dll에 대해 해결되지 않은 종속성이 있다고 알려줍니다. 및 kdcom.dll.

그것들은

code integrity
common log file system
hardware abstraction layer
kernel debugger com

라이브러리가 실제로 누락되지 않았습니다. 그렇다면 Windows가 부팅되지 않습니다. 그러나 SysWow64에서 해당 파일의 사본을 볼 수 없습니다. 이것은 문제가 portman.sys에 있지 않다는 것을 암시합니다. 문제는 Windows 7/64 비트의 win32 호환성 계층에 있습니다. 디버그를 제대로 지원하지 않습니다.

이제 2018 년이되었습니다. 64 비트 버전의 Portmon이 없습니다. 직렬 포트는 레거시 표준입니다. Windows 7 문제는 Windows 8.1 릴리스로 해결되었습니다. 그러나 Windows 7로 백 포팅 된 일부 Visual Studio 유틸리티 또는 보안 업데이트가 문제를 해결할 가능성이 희미합니다. 아마도 SysWow 및 디버깅에 익숙한 사람이 댓글을 달 것입니다.


Windows x64 용 portmon 대신 가상 COM 포트 쌍의 에뮬레이터와 물리적 포트와 가상 포트 중 하나를 연결하는 간단한 프로그램을 사용하고 로깅 기능을 수행 할 수 있습니다.

한 쌍의 가상 COM 포트를 만들려면 다음을 사용할 수 있습니다.

  • com0com (서명 된 x64 드라이버가 포함되어 있으므로 버전 "com0com-2.2.2.0-x64-fre-signed"권장)
  • VSPE ( Virtual Serial Ports Emulator )는 x64에서 시작할 때마다 드라이버 구매를 요청하지만 거부하더라도 작동합니다.

간단한 매핑 및 로깅 프로그램은 여기 에서 찾을 수 있거나 직접 작성할 수 있습니다. 간단합니다.

작업 순서는 다음과 같습니다.

  • 에뮬레이터를 사용하여 한 쌍의 가상 COM 포트 생성 (예 : COM28 및 COM29)
  • 외부 장치를 컴퓨터 COM1 포트에 연결합니다. 외부 장치와의 교환을 듣고 자하는 프로그램에서 통신을 위해 포트 COM28 (СОМ1 대신)을 설정했습니다.
  • 매핑 프로그램에서 COM1 및 COM29 포트를 바인딩하고 기록하도록 설정했습니다 (포트 전송 속도를 설정하는 것을 잊지 마십시오).

아직 시도하지 않았지만 이 질문 에는 com0com 언급되어 있습니다. 두 개의 가상 직렬 포트를 만들고 그 사이에 널 모뎀 케이블을 에뮬레이트합니다. 64 비트 Windows에서 실행할 수 있다고 주장합니다. 실제 포트에서 가상 포트 중 하나로 입력을 파이프 할 수있는 소프트웨어가 함께 제공되는지 잘 모르겠습니다. FAQ 중 하나에 로깅을 켤 수 있다고 나와 있습니다.

최악의 경우 실제 포트에서 가상 포트 중 하나로 데이터를 파이프하고 모든 것을 기록하는 작은 프로그램을 작성할 수 있습니다.

몇 가지 프로젝트를 언급하는 오픈 소스 대안에 대한 질문있습니다.


AccessPort http://sudt.com/en/ap/download.htm을 사용 했으며 훌륭하게 작동합니다. Portmon과 매우 유사


네트워크 드라이브 / 경로 등에서 Portmon을 시작하지 마십시오.

하드 디스크 드라이브 (예 : 바탕 화면)에 복사하고 다시 시작한 다음 다시 시도하십시오!


호환 모드에서 Portmon을 실행하면 작동합니다.

확인 이 버전의 Windows에서 실행되는 이전 버전의 프로그램을 확인합니다 .

그것은 말한다 :

프로그램 호환성 문제 해결사를 실행하려면 :

  1. Open the Program Compatibility troubleshooter by clicking the Start button Picture of the Start button, and then clicking Control Panel. In the search box, type troubleshooter, and then click Troubleshooting. Under Programs, click Run programs made for previous versions of Windows.
  2. Follow the instructions in the troubleshooter.

The above is a public explanation from Microsoft for a common situation when running older applications in Windows.

But, I can say it briefly;

  1. Right click on portmon.exe
  2. Select menu about "troubleshooting compatibility problem" or something like that (I'm using a foreign version of Windows, so I don't see correct name of that menu in English.)
  3. Select automatic mode
  4. It will detect the problem and recommend Windows XP (SP2) mode
  5. Select it and execute Portmon again.

I hope it works!


하드웨어가 작동하는지 테스트하기 위해 Linux 라이브 CD를 부팅 하고 statserial및 / 또는 minicom프로그램을 실행하여 작동하는지 확인할 수 있습니다. 크노픽스의 분포는 모두 이러한 프로그램을 포함하는 것으로 보인다.

Linux의 직렬 포트 /dev/ttyS0는 COM1, /dev/ttyS1COM2 등에 대해 이름이 지정 됩니다 .

참조 URL : https://stackoverflow.com/questions/1356470/sysinternals-portmon-error-2

반응형