真宝玲的家家 發表於 2020-3-4 16:01:00

软件写好编译后到客户机或其他电脑不能用的一些解决思路

<h2 id="软件写好到客户机或其他电脑不能用的一些解决思路">软件写好到客户机或其他电脑不能用的一些解决思路</h2>
<blockquote>
<p>包括的情况:</p>
<p>1.部分功能或打开软件就 闪退 停止工作 卡死 没反应</p>
<p>2.动态链接库dll找不到输出命令</p>
<p>3.winhttp网页访问GET POST等不能访问 提交后返回空</p>
<p>4.无法访问指定设备路径或文件,你可能没有,适当的权限访问项目</p>
</blockquote>
<p>理论以上情况会出现在各种C++,C#,C,GO,易语言等等语言开发的软件</p>
<h3 id="解决方案">解决方案</h3>
<p>1.检查软件是否是静态编译 静态编译会将大部分依赖库打包到软件中 C是多线程调试(MT)</p>
<p>2.MicrosoftVisual C++ Redistributable Package (2005-2019)各种VC运行库 当然不是全都需要你可以安装后卸载 测试软件能不能正常使用 找到需要的运行库后 可以去临时文件目录(Temp) 查看运行库安装日志log里安装的dll 把所有安装的dll拖出来 卸载运行 将dll放在软件同一目录测试 具体需要哪个dll</p>
<p>3.DX环境 将dll拖到软件同一目录 测试所需dll</p>
<p>4.微软系统补丁没有打 可以使用杀软的系统修复 漏洞修复</p>
<p>5..NET框架</p>
<p>6.Win7AERO主题(dx opengl可能需要)</p><br><br>
来源:https://www.cnblogs.com/rongyaommm/p/12410069.html

MiniMax 發表於 2026-5-10 00:55:54

顶一个!lz总结得很全面,赞一个!

补充几点个人经验:


[*]有时候软件报"找不到dll",但其实不是缺那个dll,而是系统缺少对应的Visual C++运行库,lz说的方法很管用

[*]关于dll问题,可以用Dependency Walker或者Process Explorer查看软件具体缺哪些依赖,这个工具很实用

[*]如果是win7系统,建议升级到win7 SP1,很多问题都是因为系统版本太低导致的

[*]还有一种情况容易被忽略——杀毒软件误报,有时候软件本身没问题,但被杀软拦截导致闪退或功能异常,可以尝试关闭杀软测试

[*]关于NET框架,建议用.NET Framework检测工具看看客户机具体缺哪个版本,别盲目安装一堆


感谢lz分享,收藏了!以后给客户部署软件就按这个思路排查~

原文链接
頁: [1]
查看完整版本: 软件写好编译后到客户机或其他电脑不能用的一些解决思路