gajowy Opublikowano 20 Maja 2013 Zgłoś Udostępnij Opublikowano 20 Maja 2013 Czasami zdarza się, że serwer lub drukarka sieciowa (co w sumie na jedno wychodzi - w końcu to serwer wydruku) jest wyłączony lub fizycznie odłączony od sieci. Nieświadomy tego użytkownik zanim się połapie, że coś jest nie tak próbuje np. drukować ten sam dokument wiele razy. Żeby uprościć sobie zadanie użyłem pliku wsadowego pingujący hosta: ping 192.168.1.33 pause I tu pojawia się pytanie: co zrobić, żeby zamiast tego: Badanie 192.168.1.33 z użyciem 32 bajtów danych: Odpowiedź z 192.168.1.33: bajtów=32 czas=7ms TTL=128 Odpowiedź z 192.168.1.33: bajtów=32 czas=1ms TTL=128 Odpowiedź z 192.168.1.33: bajtów=32 czas=2ms TTL=128 Odpowiedź z 192.168.1.33: bajtów=32 czas=3ms TTL=128 Statystyka badania ping dla 192.168.1.33: Pakiety: Wysłane = 4, Odebrane = 4, Utracone = 0 (0% straty), Szacunkowy czas błądzenia pakietów w millisekundach: Minimum = 1 ms, Maksimum = 7 ms, Czas średni = 3 ms poinformować użytkownika przyjaznym komunikatem w rodzaju "drukarka/serwer działa" lub w przypadku niepowodzenia "włącz drukarkę"? Odnośnik do komentarza
KolegaDudysa Opublikowano 20 Maja 2013 Zgłoś Udostępnij Opublikowano 20 Maja 2013 1wsze co do głowy to listing: net view ............. \\biuro \\biuro1 net view \\biuro1 net view \\biuro1\drukarka lub konsola wmic: wmic /node:nazwaSer printer list status Korzysta z klasy Win32_printer Klik Przydatne właściwości do uzyskania informacji: Availability ConfigManagerErrorCode Default Local Name Network PrinterStatus ShareName ServerName Status StatusInfo Opisy właściwości umieściłem w pliku txt: print.txt Przełączniki wmic (Opis NODE) wmic /node:nazwaSer printer get name, Availability, Status lokalnie mały przykład wmic printer get name, Availability, Status wmic printer list brief wmic printer list full metody jakie można wykonywać na klasie: Start -> cmd : wmic path win32_printer call /?:full (opisy w PL) lub wmic printer call /?:full Nad każdą metodą jest wykaz stanu: Implemented (metoda zaimplementowana) Not found (brak metody/ nie odnaleziono) Odnośnik do komentarza
gajowy Opublikowano 20 Maja 2013 Autor Zgłoś Udostępnij Opublikowano 20 Maja 2013 Dzięki za szybką odpowiedź. Może jednak sprecyzuje problem: nie chodzi mi o wyszukanie w sieci wszystkich dostępnych drukarek, a o sprawdzenie czy ta konkretna o znanym IP jest włączona. Ping załatwia sprawę, ale chciałbym żeby zamiast statystyki odebranych (lub utraconych) pakietów wyświetlił się komunikat "OK" jeśli 100% pakietów wróciło lub "brak drukarki" jeśli 0%. Jak użyć polecenia IF i jak ukryć statystyki (echo off wyłącza wyświetlanie poleceń, wyniki są widoczne). Edyta Przeczytałem jeszcze raz swój pierwszy post i widzę, że sam trochę zamieszałem. Drukarka jest sieciowa z własnym IP. Chciałem żeby było bardziej ogólnie, a wyszło mniej precyzyjnie Odnośnik do komentarza
KolegaDudysa Opublikowano 21 Maja 2013 Zgłoś Udostępnij Opublikowano 21 Maja 2013 Wybacz że teraz dopiero odpowiadam, ale niedawno co wróciłem z pracy Nie zdążyłem się za to zabrać, ale może to Cię zainteresuje: VBS Script To Retrieve The Current Status Of A Specified Printer Share Check Shared Printer Status Tak na szybko z konsoli wmic można uzyć własciwości Shared (wartość TRUE/FALSE), która wskazuje czy drukarka jest udostępniona jako zasób sieciowy, lub STATUSINFO (wartość 3 "włączona" / 4 "wyłączona" ) wmic /node:nazwaSer printer get StatusInfo | Find /I "3" Jeśli urządzenie jest włączone bedzie wyświetlona informacja, jeśli nie zadanie przejdzie do znaku zachęty z brakiem wyniku. Miłego testowania Odnośnik do komentarza
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się