繁体   English   中英

我的程序包含一个DLL,但仅在我的计算机上运行。 我的程序在另一台计算机上运行,​​但是看不到硬件

[英]My program has included a DLL but only runs on my computer. My program runs on another computer but it doesn't see the hardware

(为便于阅读,将段落分开编辑)

我有这个问题,确实需要帮助。 我已经在C#和Visual Studio中编写了一个工具。 该工具用于通过现成的编程器从PCBA读取I2C数据。 在为该现成的编程器安装驱动程序之后,它通过USB与计算机通信,并通过I2C与PCBA(DUT)通信。

我编写的工具具有一些基本的UI,可以读取序列号并输出结果。 我的问题是此工具在我编写该工具的计算机上运行良好,但是当我在另一台计算机(客户端计算机)上运行已发布的.exe文件时,它将运行程序的第一部分,要求输入序列号,然后在尝试时停止与程序员交谈。 如果我在尝试运行程序的计算机上安装Visual Studio,并打开我的源代码以通过“添加引用”添加DLL,它将起作用,但这不是正确的方法。

因此,我的问题是为什么在我尝试运行工具的计算机上,需要再次添加DLL作为通过Visual Studio的引用。 难道没有办法只双击在每台计算机上运行吗? 我不是一个真正的程序员。 我是硬件专家,所以我对Visual Studio / DLL /如何发行.exe知识有限。 请告诉我如何正确释放具有DLL的此工具。 谢谢。 (我正在使用Visual Studio2013。)

我的程序的开头在下面有这些用法。 如果我在目标计算机上打开Visual Studio,尝试运行我的工具,则会看到使用带红色下划线的PP_COM_WRAPPER。 需要再次添加它作为参考,以使红色下划线消失。 我确实先安装了现成的程序员驱动程序。

using System;
using System.IO;
using System.Windows.Forms; //for UI
using System.Collections.Generic;
using System.Text;
using System.Threading;
using PP_COM_Wrapper;

谢谢。

实际上,这要归功于Hans Passant,他在评论中暗示了这是软件版本问题。 现成的程序员是我编写该工具的计算机上的较旧版本。 客户端计算机具有较新版本的编程器。 在将Programmer更新为与客户端计算机相同的版本并在我的计算机上重新创建安装文件以在客户端计算机上运行之后,它可以工作! 感谢所有人的回复。

请使用安装项目。 生成应用程序项目时,安装程​​序项目将为您提供dll(参考文件)。 当您在客户端计算机上安装它时,它会自动安装所需的dll文件。 所以在这里我想说要使用安装项目,它可能会帮助您解决问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM