我所遇到的C++连接问题汇总

http://blog.sina.com.cn/s/blog_7caa399301017k1e.html

 

 

1:无法打开kernel32.lib

  针对不同版本的VS,lib库所在的地方都不一样,所以首先搜索kernel32.lib这个文件所在的地方,例如我这个kernel32.lib 所在的地方是:C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x86,

找到这个lib所在的地方之后,只要做如下操作就行了:

项目 属性 连接器 常规  附加库目录 添加kernel32.lib所在的那个文件夹的路径。

2:fatal error LNK1181: 无法打开输入文件"****.lib";

  这种问题一般是有些进程正在打开这个要使用的lib,所以一般关掉对应的进程就好,找不到对应的进程的话就关机重启试试。

  
Well in this case it may be a VS bug. Try to find which process keeps the thelibrary.lib opened. 

 

3:以下是我使用Openv所遇到的错误

“try.exe”(Win32):  已加载“C:\Users\Lin\Desktop\example\try\Debug\try.exe”。已加载符号。
“try.exe”(Win32):  已加载“C:\Windows\SysWOW64\ntdll.dll”。已加载符号。
“try.exe”(Win32):  已加载“C:\Windows\SysWOW64\kernel32.dll”。已加载符号。
“try.exe”(Win32):  已加载“C:\Windows\SysWOW64\KernelBase.dll”。已加载符号。
程序“[7076] try.exe”已退出,返回值为 -1073741701 (0xc000007b)。
 
一直以为是开始在x64写了程序,改成在win32写程序遗留下来的dll的问题,整了半天,原来是openc的环境变量忘了改回来了。

4:连接问题实例

  使用了不完整的类型 相应的库都包含了还出现这种错误一般是程序的某个地方少了一个分号。

VS 2010下 打开实例 出现这样的错误:

LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

终极解决方案:
VS2010在经历一些更新后,建立Win32 Console Project时会出“error LNK1123” 错误,解决方案为将 项目|项目属性|配置属性|清单工具|输入和输出|嵌入清单 “是”改为“否”即可,但是没新建一个项目都要这样设置一次。
在建立VS2010 Win32 Project项目时,按照上面解决方案依然发生了“error LNK1123”错误,经过上网查资料,解决方案为:
第一步:与上相同。
第二步:将 项目|项目属性|配置属性|连接器|清单文件|嵌入清单 “是”改为“否”。
第三步:一般计算机经过上两步设置就能解决问题了,但是如果还有问题,那就按一下方法解决:
计算机是否为64bit操作系统,如是,继续2。
查 找是否有两个cvtres.exe。一个是C:\Program Files(x86)\Microsoft Visual Studio 10.0\vc\bin\cvtres.exe, 另一个是C:\Windows\Microsoft.NET\Framework\v
4.0.30319\cvtres.exe。右键属性|详细信息 查看两者版本号,删除/重命名较旧的版本,或者重新设置Path变量。

意外的是,治本的办法是第三步,删除旧版本的cvtres.exe后,就不需要每次都设置配置了。

 


在电脑里面搜索一下cvtres.exe,发现存在多个文件,使用最新的cvtres.exe替换老的文件即可,替换之前记得备份一下,如果不对,可以替换回来。


例如:我的电脑里面安装了vs2010,最近更新了系统,打了一些补丁,结果就出现这种错误了。在电脑里面搜索发现

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin

C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7600.16385_none_ba476986f05abc65

C:\Windows\Microsoft.NET\Framework\v4.0.30319


这三个路径里面都有cvtres.exe文件,于是我尝试使用第二个路径里面的文件替换第一个路径的文件,问题解决。

转载于:https://www.cnblogs.com/qiaozhoulin/p/5287437.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用C++与MySQL建立连接时,可能会遇到以下一些常见问题: 1. 编译器提示找不到mysql.h文件 这是由于编译器无法找到MySQL头文件的路径导致的。需要在编译器中添加MySQL的头文件路径,例如: ```c++ #include <mysql.h> //MySQL头文件 ``` 2. 编译器提示找不到libmysql.dll或libmysql.lib文件 这是由于编译器无法找到MySQL库文件的路径导致的。需要在编译器中添加MySQL的库文件路径,并在连接时指定MySQL的库文件,例如: ```c++ #pragma comment(lib, "libmysql.lib") //连接MySQL库文件 ``` 3. 连接MySQL服务器失败 连接MySQL服务器失败可能是由于以下原因: - MySQL服务器地址或端口号不正确 - 用户名或密码不正确 - MySQL服务器没有启动 - 防火墙阻止连接 需要检查以上原因并进行相应的调整。 4. 执行SQL语句失败 执行SQL语句失败可能是由于以下原因: - SQL语句语法错误 - 操作的表或字段不存在 - 操作的表或字段没有权限 - 数据类型不匹配 需要检查以上原因并进行相应的调整。 5. 内存泄漏或崩溃 在使用C++与MySQL建立连接时,如果没有正确地释放内存,可能会导致内存泄漏或程序崩溃。需要在程序中正确地释放内存,例如: ```c++ mysql_free_result(res); //释放查询结果内存 mysql_close(conn); //关闭MySQL连接 ``` 以上是在使用C++与MySQL建立连接时可能会遇到的一些常见问题和解决方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值