今天准备上个软件,开发环境在win7,上到win server 2008 r2,结果出现无法运行,吓死我了
问题签名:
问题事件名称: CLR20r3
问题签名 01: RedisProcessManager.exe
问题签名 02: 1.0.0.0
问题签名 03: 5816dd59
问题签名 04: RedisProcessManager
问题签名 05: 1.0.0.0
问题签名 06: 5816dd59
问题签名 07: 31
问题签名 08: 28
问题签名 09: System.IO.FileNotFoundException
OS 版本: 6.1.7601.2.1.0.272.7
区域设置 ID: 2052
其他信息 1: 80be
其他信息 2: 80bef4983f28a96f86c4130ec98e6966
其他信息 3: d6e2
其他信息 4: d6e233431d5276496c020aebfd93c495
联机阅读隐私声明:
http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0804
如果无法获取联机隐私声明,请脱机阅读我们的隐私声明:
C:Windowssystem32zh-CNerofflps.txt
——————————————————————————————————————————————————————————
然后我放到了另一台win server 2008的可以正常工作,找了资料大致意思是说软件运行出现了文件异常,或者类似依赖缺了。
环境有个区别就是,安装了vs2010.
虚拟机做了个测试,果然在有vs2010的机器上就可以了,没有的就报错了。
那么肯定是缺少了什么东西导致的,搞了一台纯净的系统,安装vs2010,他安装完一步,我运行下测试下,到底是装了啥就可以了。
结果发现是安装了vc 10.0 runtime(x64)之后就可以了
然我去单独下载安装了这个就可以了
https://download.microsoft.com/download/3/2/2/3224B87F-CFA0-4E70-BDA3-3DE650EFEBA5/vcredist_x64.exe
我这个软件算简单,唯独引入了Sqlite的dll
估计是这个问题导致的无法运行。
总结下:在dotnet 引入C++的dll时要注意环境是否有vc++的支持。
福建C# .net MVC 技术群 468259528