我们这里的每台打印机都直接对应一个IP地址而不是连接到电脑上,那么我在编程时如何获得打印机的IP地址,请各位赐教,急急急急急急急急急急急急急急急急急急急急急!
解决方案 »
- COM组件Method的问题
- 找个人外包一个vb客户管理系统
- (VB+access)查询日期问题:条件是比当前日期要大。请教这条语句该怎么样写。
- 谁有对图象进行分割的算法,即将一副图象分成具有相同特征的几个区域。
- 如何使单色位图的刷子中的黑色变成透明色
- 了解翻译软件原理的大哥请进!我想用vb编写这样一个助读软件
- 求助 VB 任务栏图标 不响应双击事件
- 要出人命拉,各位大侠一定要指点迷津那!
- 在VB中如何用程序调用,超级终端生成以。HT格式的文件并且执行。??????
- 在沈阳找个真正的高手挺难
- 在VB6中,该怎么访问带密码的ACCESS97数据库.(谢谢)
- vb+access ,怎么把查询结果输出成txt文件?
Private Declare Sub RtlMoveMemory Lib "KERNEL32" (hpvDest As Any, ByVal hpvSource&, ByVal cbCopy&)
Private Type HOSTENT
hName As Long
hAliases As Long
hAddrType As Integer
hLength As Integer
hAddrList As Long
End Type
Private Function GetIP(ByVal phostname As String) As String
Dim hostent_addr As Long
Dim host As HOSTENT
Dim hostip_addr As Long
Dim temp_ip_address() As Byte
Dim i As Integer
Dim ip_address As String
hostent_addr = gethostbyname("lily")
If hostent_addr = 0 Then
MsgBox "不可识别"
Exit Function
End If
RtlMoveMemory host, hostent_addr, LenB(host)
RtlMoveMemory hostip_addr, host.hAddrList, 4 ReDim temp_ip_address(1 To host.hLength)
RtlMoveMemory temp_ip_address(1), hostip_addr, host.hLength
For i = 1 To host.hLength
ip_address = ip_address & temp_ip_address(i) & "."
Next
ip_address = Mid$(ip_address, 1, Len(ip_address) - 1)
GetIP = ip_address
End FunctionPrivate Sub Command1_Click()
If Left(Combo1.Text, 2) <> "\\" Then
MsgBox "打印是本机的!"
Else
MsgBox "IP为" & GetIP(Mid(Combo1.Text, 3, InStr(3, Combo1.Text, "\") - 3))
End If
End SubPrivate Sub Form_Load()
Dim PR As Printer
For Each PR In Printers
Combo1.AddItem PR.DeviceName
Next PR
Combo1.Text = Printer.DeviceName
End Sub'本机IP这里就不显示了,很容易得到了