2012-07-03 5 views
0

네트워크에 프린터가 설치되어 있고 그 이름으로 IP 주소를 확인하는 방법을 찾고 있습니다.Server PrinterName에서 프린터 IP 주소 가져 오기

먼저 프린터가 네트워크 소켓에 연결되어 있습니다. 자체 이름과 정적 IP 주소가 있습니다.
이와 같이 IP 주소에 대한 연결을 열고 데이터 스트림 (ZPL)을 보내 텍스트를 보낼 수 있습니다.

둘째 - 프린터가 인쇄 서버에 설치되어 있습니다.
\\ PRINT_SERVER \ Windows_Printer_Name
속성을 체크인하면 '포트'및 '포트 구성'에서 IP 주소를 찾을 수 있습니다. (COM1 또는 LPT1과 같은 로컬 포트 ​​대신 IP 주소 인 TCP/IP '포트'사용)

Windows 경로에서이 IP 주소를 찾는 자동화 된 방법이 필요합니다.

글쎄, 내가 실제로해야할 일은 다른 방향으로 일하는 것입니다. IP 주소에서 서버/이름을 찾으십시오.하지만 그렇게 쉬운 것은 아님을 알 수 있습니다.

.NET에서 작업 중이므로 완벽하게 처리 할 수 ​​있지만 구문 분석과 함께 살 수 있습니다. 필요한 경우 명령 줄에서 뭔가. 가능한가?

감사


선명도

답변

0

다시 다음 TCP/IP를 통해 NBT (NetBIOS를 사용하여 NBTSTAT있는 "표시 프로토콜 통계와 현재 TCP/IP 연결로 사용 방식과 명령 행 인수에 대해 편집) "서버 IPNAME를 가정 -A 스위치

nbtstat -A 192.168.0.1 

에 192.168.0.1

입니다 서버 이름에서

받고 ip는 정당하지만 아무도 관심있는 명령 줄 스크립트에 늦은 핑 (ping) :

ping servername 
+0

하지만 내 프린터가 \\ 서버 \ a_name_the_admin_chose와 같은 서버에 설치되어 - 네트워크에없는 장치 이름 - 프린터의 IP 인쇄 서버의 IP 없습니다. Windows 드라이버를 삭제해도 여전히 유효한 네트워크 ID입니다. –

0

을 사용하는 것입니다. 프린터의 대기열 이름과 포트 값을 나열합니다. 나는 실제 IP 주소가 해결하기 쉽지 않다, 포트 값이 항상 IP 주소가 아니며 때로는 1.2.3.4_IP 접미사 또는 IP_ 접두사 문자열을 가졌다 고 생각합니다.

' c:> cscript -nologo scriptname.vbs 

Option Explicit 

Dim StdOut: Set StdOut = WScript.StdOut 
Dim owshNetwork: Set owshNetwork = CreateObject("WScript.Network") 
Dim oPrinters 
Dim idx 

Set oPrinters = owshNetwork.EnumPrinterConnections 

for idx=0 to oPrinters.count/2-1 
    StdOut.WriteLine "Name=" & oPrinters.Item(idx*2+1) & ", Port=" & oPrinters.Item(idx*2) 
next 
관련 문제