Czy istnieje bezpłatny sposób monitorowania portu szeregowego w systemie Windows 7 x64?

15

Rozejrzałem się trochę, ale jeszcze nie znalazłem darmowego sposobu monitorowania portu szeregowego (bez otwierania lub blokowania go z innych aplikacji), który działa na 64-bitowym systemie Windows 7.

Nawet własny portmon Microsoftu nie działa. Kilka postów mówiło o uruchomieniu go w trybie zgodności, ale to nie działa dla mnie. Wypróbowałem tryb zgodności dla systemu Windows XP z dodatkiem Service Pack 2 i 3 (jedyne dostępne na liście rozwijanej) i nie zezwalam na jego działanie.

Więc tak, czy jest jakiś sposób monitorowania portu szeregowego dla Windows 7 64-bit?

Xantham
źródło
2
PortMon z MS / Sysinternals nie działałby, ponieważ sterownik zależy od bitowości systemu operacyjnego. W przeciwieństwie do programów trybu użytkownika, które mogą korzystać z WOW64 do uruchamiania 32-bitowej aplikacji w systemie x64.
0xC0000022L

Odpowiedzi:

1

Właśnie próbowałem Advanced Serial Port Monitor . Tryb „Szpieg” robi dokładnie to, co chcesz.

Wypróbuj tylko za darmo. Musisz jednak zapłacić za trwałe rozwiązanie.

ZNAK C
źródło
1

Obejście, z którego korzystałem w przeszłości, kiedy byłem w dokładnie takiej samej sytuacji, jak w przypadku korzystania z 32-bitowej maszyny wirtualnej.

Nie jest to najlepsze rozwiązanie, ale działa i nie kosztuje (oprócz kosztów związanych z konfiguracją środowiska VM).

Scott Chamberlain
źródło
Jaki byłby przykład maszyny wirtualnej?
Peter Mortensen,
Więc mówisz, że (proces włączony) maszyna wirtualna może monitorować port na hoście bez blokowania go przed aplikacjami na hoście? Myślałem, że urządzenia hosta mogą być dostępne dla hosta lub gościa, ale nie jedno i drugie.
Scott,
1
@Scott Sugeruje, aby PortMon działający w 32-bitowej maszynie wirtualnej mógł monitorować połączenie szeregowe maszyny wirtualnej.
jpaugh,
1

Jeśli masz inny komputer, zalecam uruchomienie systemu operacyjnego POSIX i używanie socatdo „przesyłania” danych z jednego portu do drugiego podczas rejestrowania ruchu. Jest to w zasadzie rozwiązanie sprzętowe, ale wykorzystuje sprzęt ogólnego przeznaczenia zamiast czegoś specjalnego. np. coś takiego:

sudo socat -x -v -d /dev/ttyUSB0,b115200,rawer,cr /dev/ttyUSB1,b115200,rawer,cr

To, co jest naprawdę fajne w tym programie, to to, że jest super elastyczny, o ile możesz się z czym połączyć. Możesz używać gniazd TCP / IP, plików / strumieni itp. Prędkości transmisji, zmieniać zakończenia linii itp. Artykuł wprowadzający (z 2009 r., Ale nadal przydatny) jest dostępny tutaj .

Edycja: Aby to wyjaśnić, zamiast takiej konfiguracji sprzętowej:

Main computer serial port <--> Device serial port

Będzie tak:

Main computer serial port <--> sniffer computer serial port 1 Device serial port <--> sniffer computer serial port 2

iX3
źródło
To prawda, ale pozwoli obserwować wszystkie dane wysyłane lub odbierane przez port fizyczny. Ponieważ OP nie określił, czy „port” był abstrakcyjny / programowy, czy fizyczny / sprzętowy, myślę, że nadal jest to uczciwa odpowiedź.
iX3 12.12.18
@jpaugh Nie rozumiem, co masz na myśli. Co „nie działa”? To rozwiązanie umożliwia korzystanie z dowolnego oprogramowania lub sprzętu, o ile dane przepływają przez fizyczny port. Wystarczy podłączyć dodatkowy komputer / urządzenie w linii z połączeniem i uruchomić, socataby przekazać dane podczas logowania. Dodam prosty schemat do odpowiedzi w nadziei, że to wyjaśnię.
iX3
W porządku. Tak, źle zrozumiałem. Teraz, kiedy to rozumiem, nie sądzę, żebyś powiedział coś złego. Pierwotnie przyjechałem tutaj, próbując poradzić sobie z wirtualnym urządzeniem szeregowym a la USB, więc oczywiście nie miałoby to sensu w tym przypadku. Przepraszam za taht.
jpaugh
1
Do debugowania połączenia USB gorąco polecam te: desowin.org/usbpcap wiki.wireshark.org/CaptureSetup/USB
iX3