注:以下我列举的一些错误是我开发中遇到了,花费了大量时间,踩了大量坑肝出来的,希望对你有所帮助。(由于没有从开始记录,就倒着回忆吧)
①使用Visual Studio 2022 编译成的.exe文件,放到另一台没有环境的电脑上不能运行,提示缺少ucrtbased.dll 和 vcruntime140d.dll 库文件,(这里尝试过很多方法就不列举了)需要到ucrtbased.dll 免费下载 | DLL‑files.com (dll-files.com)这个网站去下载,否则使用其他地方的会出现0x000007b 的错误,下载好之后:有以下方法生效,我是直接放到程序运行目录下就好了
1.打开从 DLL-files.com 下载的压缩文件。将 DLL 文件解压到电脑上的某个地方。
如果您不确定如何提取您的压缩文件 我们推荐使用 File Viewer Plus 4。您可以使用这款软件打开您的压缩文件与300种其他格式的文件(例如视频、音乐、图片、pdf 等)这是一款十分好用的工具。
-
我们建议把该文件跟要求使用它的程序放在同一路径。注意 32 位程序需要使用 32 位的 DLL 文件, 64 位程序需要使用 64 位的 DLL 文件。否则会出现 0xc000007b 报错。
2.如果问题仍没有解决,把文件放到你的系统路径。它的默认路径是在:
C:\Windows\System (Windows 95/98/Me),
C:\WINNT\System32 (Windows NT/2000),
C:\Windows\System32 (Windows XP, Vista, 7, 8, 8.1, 10).
在 64位 Windows 上,32位 DLL 文件的默认路径是
C:\Windows\SysWOW64\, 64 位 DLL 文件在
C:\Windows\System32\ 。
确保覆盖已有的全部文件(但保留一个原文件备份)。
重启电脑。
3.如果问题仍未解决,按以下步骤注册 DLL 文件:
32 位 DLL 文件用在 32 位 Windows 上,64 位 DLL 文件用在 64 位 Windows 上:
-
打开一个提升权限运行的命令行窗口。
-
-
具体操作是点击“开始”,点击“所有程序”,点击“附件”,右键点击“命令提示符”,然后点击“以管理员权限运行”。
-
在 Windows 8/10 中,前往“开始”界面。键入“cmd”, Windows 会找到“命令行提示符”。右键点击“命令提示符”,选择“以管理员权限运行”。
-
如果要求输入管理员密码或确认,输入密码,或点击“允许”。
-
-
输入 regsvr32 “filename".dll 然后按下回车。
将 32 位 DLL 文件注册到一台 64 位 Windows 上:
-
按前述方法打开一个提升权限运行的命令行窗口。
-
在命令行中键入:
- cd c:\windows\syswow64\
-
然后键入以下命令并回车:
- regsvr32 c:\windows\syswow64\"filename".dll
② 程序运行运行过程中出现以下错误
严重性 代码 说明 项目 文件 行 禁止显示状态 详细信息
错误 C4996 'inet_addr': Use inet_pton() or InetPton() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings Project3 E:\share\share\src\mitre_sfr.c 492
将警告放到如下位置即可(这只是一种方法,还有其他方法)
③ 程序如果使用第三方库,vs studio 2022 找不到报错
面向小白visual studio 2019 添加第三方库教程_vs2019导入库-CSDN博客
看这个大哥的教程吧
④ 如何将Linux 程序集成到windows上
说一下我的经历,我使用的tif库和jpeg库,首先得使用交叉编译器,然后还得获取将第三方库源码,编译成dll版本,至于如何编译,vs studio 配合cmake就能编,如果有时间我会出一期教程,编好后还得将头文件等都换成windows版本得相当麻烦,我编程过一版,但是有点问题,懒得看了,但是这样做是可以得,但是相当麻烦,没有linux经验得没法弄,涉及到linux下库的编译
所以建议直接配windows环境,直接在windows上跑,而且linux下可运行的程序放到windows上会有各种兼容性问题,还得改