Visual Studio 2008 部署到 Intermec CK3
Posted
技术标签:
【中文标题】Visual Studio 2008 部署到 Intermec CK3【英文标题】:Visual Studio 2008 Deploying To Intermec CK3 【发布时间】:2017-11-22 20:14:57 【问题描述】:我想知道我做错了什么。
我在使用 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 中 Build 选项卡下的选项工作室 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 Method Documentation 表示,如果传入空字符串作为 DNS 名称,它将使用本地主机的 IPV4 地址。这可能是问题所在......也许我只需要一个网络人员来查看我的扫描仪?哈哈
【问题讨论】:
它似乎正在尝试访问共享帐户上的 .DLL 文件,然后如果我切换到扫描仪,它位于不同的网络上,这会限制 DLL 被发现... 更多满怀希望地来 【参考方案1】:当我进行构建时,它被放到了一个共享文件夹中,当我在 labtop 上更改了我连接到的网络时,我从中进行了构建,我可以看到错误说它无法访问 DLL。 . 这也是它不能在扫描仪上工作的原因。
我希望它们位于多个位置的共享位置,这样每个位置都需要一个通过防火墙打开的端口来访问信息!
【讨论】:
以上是关于Visual Studio 2008 部署到 Intermec CK3的主要内容,如果未能解决你的问题,请参考以下文章
如何部署和注册支持多个版本的 Visual Studio(2005、2008、2010)的 VSPackage?
Visual Studio 2008 64 位部署项目未按预期部署 64 位 VC90 合并模块
如何在 Visual Studio 2012 中使用 SQL Server Express 2008 部署 wpf 应用程序?