Visual Studio 2008 Развертывание на Intermec CK3
Я хочу знать, что я делаю неправильно.
У меня есть приложение на старом старом labtop, которое использует Visual Studio 2008. Эмуляция для запуска приложения отладка работает как задумано.
Проблема в том, что когда я пытаюсь перенести это приложение на настоящий сканер intermec ck3, оно работает так, как будто оно не подключено. Хотя это является.
В приложении я проверяю группу подсетей, чтобы выяснить, в каком месте используется сканер. Если это не может обнаружить это, это дает??? для IP-адреса и местоположения.
Когда я запускаю это приложение через отладчик на старом labtop, он не обнаруживает проблем с IP-адресом. Но потом, когда я переношу.exe на сканер, он ничего не находит и выдаст мне???... Но, может быть, это где я иду не так. Я привык компилировать приложение и создавать его, а затем перемещать этот файл на устройство, на котором оно будет использоваться.
Похоже, что это не так. Поскольку я вижу только "Построить решение" / "Перестроить решение" / "Развернуть решение" и "Очистить решение" и "Построить MyApp" / "Восстановить MyApp" / "Развернуть MyApp" / "Очистить MyApp..") в качестве параметров под вкладкой "Сборка" в Visual Studio 2008.
Кто-нибудь может мне помочь или указать мне правильное направление? Пожалуйста, не отрицайте это и не помечайте его как дубликат, не объясняя, почему...
Спасибо:)
Это код, используемый для поиска 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-адрес локального хоста. В чем, вероятно, проблема... Может, мне просто нужен сетевой парень, чтобы посмотреть на мой сканер? лол
1 ответ
Когда я делал сборку, она помещалась в общую папку, когда я менял сеть, к которой я подключался, на labtop, из которого я делал сборку, я мог видеть ошибки, говорящие о том, что он не может получить доступ к DLL... также причина, по которой он не будет работать на сканере.
Я хотел, чтобы они находились в общих местах, состоящих из нескольких мест, поэтому для каждого места нужен был порт, открытый через брандмауэр для доступа к информации!