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 2008 数据库项目部署基线

如何部署和注册支持多个版本的 Visual Studio(2005、2008、2010)的 VSPackage?

Visual Studio 2008 64 位部署项目未按预期部署 64 位 VC90 合并模块

如何在 Visual Studio 2012 中使用 SQL Server Express 2008 部署 wpf 应用程序?

Visual Studio 2008 无法正常 Check in 和 Check out

在 Visual Studio 2008 中使用设计器将逗号分隔列表作为参数传递给 db2 查询的 IN 子句