找回密码
 立即注册

QQ登录

只需一步,快速开始

cccc
金牌服务用户   /  发表于:2024-8-20 10:13  /   查看:1242  /  回复:15
您好,我做了个测试工程,我希望发布时,引用的dll不和编译的exe文件在同一个文件夹,而放到exe文件所在的目录下新建的文件夹dll2下。                                       1、首先把工程引用的spread和gcexe相关的dll的复制本地属性设置为True。如图: 1724118371383.png417595519.png


2、在工程后台代码窗体的初始化过程里增加设置引用的spread和gcexcel的dll文件到指定的位置。如图: 1724118691278.png564306945.png                                        3、我在工程的Release目录下手动新建了dll2文件夹,并把引用的spread和gcexcel的所有dll文件拷贝到dll2文件夹里。如图: image.png62811278.png
4、编译后,我把Release文件夹拷到开发机的其他目录里,运行OK。
5、我再把Release文件夹拷到其他电脑上,运行EXE文件,无法打开,没有任何反应。
为啥拷贝到其他电脑,就无法运行呢?什么原因,如何解决,我想实现spread和gcexcel引用的dll文件跟exe文件不在一起。请大师指点。

15 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-8-20 16:27:35
沙发
理论上来说应该不会有你提到的问题,我建议你可以查一下出现问题电脑上的“事件管理器”,上面应该会有程序运行报错的日志信息。看看其中的报错内容再说



回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2024-8-21 10:41:28
板凳
456f7173a6ac550d5fa7fe4f0aadf39.png93446654.png
查看了下事件管理器,有错误信息报告。您帮我分析,从异常信息那里好像是说文件没找到。
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2024-8-21 10:50:40
地板
1724208456164.jpg548143310.png
1724208434088.png128855589.png
详细信息
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2024-8-21 10:51:37
5#
Richard.Ma 发表于 2024-8-20 16:27
理论上来说应该不会有你提到的问题,我建议你可以查一下出现问题电脑上的“事件管理器”,上面应该会有程序 ...

事件管理器查到的错误详细信息,帮我分析下,谢谢。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-8-21 12:21:25
6#
18D7C2C1.jpg723193969.png
说实话dll放到不同位置这块我也不是很清楚,得你自己调查了,我只能帮你想一下大概的思路

从报错信息来看,你应该关注这两个信息,看起来更像是应用本身的报错
image.png139671629.png

另外,你可以尝试给这边的事件方法加上try catch看看能否得到报错信息
image.png163932189.png
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2024-8-21 17:52:55
7#
Richard.Ma 发表于 2024-8-21 12:21
说实话dll放到不同位置这块我也不是很清楚,得你自己调查了,我只能帮你想一下大概的思路

从报错信息 ...

嗯,我做了不用spread的测试,这方法是可以的。为啥加了spread引用文件就只能在服务器上可以,放到其他电脑运行就不行。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-8-21 18:27:12
8#
猜测可能和授权有关系。这个具体你得看一下我上面提到的报错信息,可能能找到

image.png728601989.png

或这个你给一个复现问题的简单demo也行,我在这边测试一下看看
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2024-8-26 12:03:54
9#
您好,我做了个简单测试工程,您帮我看下为啥spread的依赖文件指定位置就不能运行工程exe文件。谢谢

testspreaddll.zip

79.83 KB, 下载次数: 96

回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-8-26 17:12:19
10#
本帖最后由 Richard.Ma 于 2024-8-26 17:13 编辑

你发过来的工程,我测试了一下没法运行,稍微修改了一点内容
image.png11842955.png

测试下来,在其他的机器上运行也是没有问题的,附上修改后的demo,以及最终编译的结果


testspreaddll.zip (56.39 KB, 下载次数: 106)
image.png754494018.png
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部