spread windows forms 14关于spread和gcexcel的dll引用文件指定位置的发布.
您好,我做了个测试工程,我希望发布时,引用的dll不和编译的exe文件在同一个文件夹,而放到exe文件所在的目录下新建的文件夹dll2下。 1、首先把工程引用的spread和gcexe相关的dll的复制本地属性设置为True。如图:2、在工程后台代码窗体的初始化过程里增加设置引用的spread和gcexcel的dll文件到指定的位置。如图: 3、我在工程的Release目录下手动新建了dll2文件夹,并把引用的spread和gcexcel的所有dll文件拷贝到dll2文件夹里。如图:
4、编译后,我把Release文件夹拷到开发机的其他目录里,运行OK。
5、我再把Release文件夹拷到其他电脑上,运行EXE文件,无法打开,没有任何反应。
为啥拷贝到其他电脑,就无法运行呢?什么原因,如何解决,我想实现spread和gcexcel引用的dll文件跟exe文件不在一起。请大师指点。
理论上来说应该不会有你提到的问题,我建议你可以查一下出现问题电脑上的“事件管理器”,上面应该会有程序运行报错的日志信息。看看其中的报错内容再说
查看了下事件管理器,有错误信息报告。您帮我分析,从异常信息那里好像是说文件没找到。
详细信息 Richard.Ma 发表于 2024-8-20 16:27
理论上来说应该不会有你提到的问题,我建议你可以查一下出现问题电脑上的“事件管理器”,上面应该会有程序 ...
事件管理器查到的错误详细信息,帮我分析下,谢谢。
说实话dll放到不同位置这块我也不是很清楚,得你自己调查了,我只能帮你想一下大概的思路
从报错信息来看,你应该关注这两个信息,看起来更像是应用本身的报错
另外,你可以尝试给这边的事件方法加上try catch看看能否得到报错信息
Richard.Ma 发表于 2024-8-21 12:21
说实话dll放到不同位置这块我也不是很清楚,得你自己调查了,我只能帮你想一下大概的思路
从报错信息 ...
嗯,我做了不用spread的测试,这方法是可以的。为啥加了spread引用文件就只能在服务器上可以,放到其他电脑运行就不行。 猜测可能和授权有关系。这个具体你得看一下我上面提到的报错信息,可能能找到
或这个你给一个复现问题的简单demo也行,我在这边测试一下看看 您好,我做了个简单测试工程,您帮我看下为啥spread的依赖文件指定位置就不能运行工程exe文件。谢谢
本帖最后由 Richard.Ma 于 2024-8-26 17:13 编辑
你发过来的工程,我测试了一下没法运行,稍微修改了一点内容
测试下来,在其他的机器上运行也是没有问题的,附上修改后的demo,以及最终编译的结果
页:
[1]
2