我想知道我做错了什么。
我在使用 Visual Studio 2008 的旧 labtop 上有一个应用程序。运行该应用程序的仿真正在调试按预期工作。
问题是,当我尝试将此应用程序带到实际的 intermec ck3 扫描仪时,它就像未连接一样。虽然是。
在应用程序上,我检查一组子网以确定扫描仪正在使用的位置。如果它无法检测到它,它会给出???用于 IP 地址和位置。
当我通过旧 labtop 上的调试器运行此应用程序时,它发现 IP 没有问题。但是当我将 .exe 带到扫描仪时,它没有找到任何东西并给了我???...但是,也许这就是我出错的地方。我习惯于编译应用程序并创建某种文件,然后将该文件移动到将要使用的设备上。
情况似乎并非如此。因为我只看到 Build Solution/Rebuild Solution/Deploy Solution/Clean Solution 和 Build MyApp/Rebuild MyApp/Deploy MyApp/Clean MyApp.. 作为 Visual Studio 2008 中 Build 选项卡下的选项。
任何人都可以帮助我或指出我正确的方向吗?请不要在不告诉我原因的情况下对此投反对票或立即将其标记为重复...
谢谢 :)
这是用于查找 IP 地址的代码:
Public Sub New()
' This call is required by the Windows Form Designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
Dim hostentry As Net.IPHostEntry = Net.Dns.GetHostEntry(Net.Dns.GetHostName())
If hostentry IsNot Nothing Then
Dim collectionOfIPs As Net.IPAddress() = hostentry.AddressList
MessageBox.Show(collectionOfIPs(0).ToString())
strSubnet = collectionOfIPs(0).ToString()
If strSubnet.StartsWith("172.18.46.") Or strSubnet.StartsWith("172.18.51.") Or strSubnet.StartsWith("172.18.49.") Or strSubnet.StartsWith("172.18.61.") Or strSubnet.StartsWith("172.18.62.") Then
strSubnet = "NOR " & Now.Month.ToString & "/" & Now.Day.ToString
'ElseIf strSubnet.StartsWith("10.79.255.") Or strSubnet.StartsWith("172.24.148.") Or strSubnet.StartsWith("172.24.149.") Or strSubnet.StartsWith("172.24.150.") Or strSubnet.StartsWith("172.24.151.") Or strSubnet.StartsWith("10.73.61.") Or strSubnet.StartsWith("10.73.62.") Then
' strSubnet = "DAK " & Now.Month.ToString & "/" & Now.Day.ToString
ElseIf strSubnet.StartsWith("10.48.3.") Or strSubnet.StartsWith("10.68.8") Then
strSubnet = "DEX " & Now.Month.ToString & "/" & Now.Day.ToString
ElseIf strSubnet.StartsWith("172.20.3.") Or strSubnet.StartsWith("172.18.209") Or strSubnet.StartsWith("172.18.208.") Then
strSubnet = "RRP " & Now.Month.ToString & "/" & Now.Day.ToString
Else
strSubnet = "??? " & collectionOfIPs(0).ToString()
End If
Me.Text = strSubnet
End If
End Sub
从Dns.GetHostEntry 方法文档中说,如果为 DNS 名称传入一个空字符串,它将使用本地主机的 IPV4 地址。这可能是问题所在......也许我只需要一个网络人员来查看我的扫描仪?哈哈