VS中遇到的奇怪问题
8、错误 C2440: “static_cast”: 无法从“void (__thiscall CView::* )(UINT,LONG)”转换为“LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)” 问题
原因:VC6.0的消息映射函数方法,升级至VS2005以后,不能再这样使用。
解决方法:把原来的消息函数返回值类型改为LRESULT,函数内可以随便写个return TRUE; 然后消息函数的参数必须改写成(WPARAM wParam,LPARAM lParam)而不论这两个参数是否用得到;最后,消息映射如ON_MESSAGE(UM_PROGRESS,&OnProgress) 这样就没问题了,祝你成功!
7、解决“错误 D8016 “/ZI”和“/Gy-”命令行选项不兼容 ”问题
解决方法:VS2015调试中出现上述问题,我们需要手动改变/ZI命令行选项 或者 /Gy命令行选项,
进入“项目”—>“属性”—>“C/C++”
(1)—>“常规”—>“调试信息格式”—>选择“程序数据库(/Zi)”或“无”
或者
(2)—>“代码生成”—>“启用函数集链接”—>选择“是 (/Gy)”
1、关闭主窗体时,其他窗体仍显示,并且仍处于调试状态等
原因: 1)Form.Show();//脱离主线程显示
2)Application.Exit(); //通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。
3)Environment.exit(0);//立即终止
因此,想立即终止用:Environment.exit(0);想处理了消息后关闭所有应用程序窗口,用Application.Exit();
2、后期生成事件内拷贝生成后的dll,报“错误 170”
原因:命令copy "$(SolutionDir)Src\Dependencies\7z.dll" "$(SolutionDir)\Build\bin\" /y 中的copy命令错误。
解决方法:将copy 改为 xcopy。即命令改为:xcopy "$(SolutionDir)Src\Dependencies\7z.dll" "$(SolutionDir)\Build\bin\" /y
注:1) rmdir /S /Q (/S 除目录本身外,Q 安静模式)
2) xcopy (/E 所有, /S 除了空的,/T 创建目录结构,但不复制文件。/Y 复制文件审核设置(隐含 /O)。/D:m-d-y 复制在指定日期或指定日期以后更改的文件。如果没有提供日期,只复制那些源时间比目标时间新的文件。)
3、编程时引用的dll库内的类可用,编译时却报找不着引用的库。
原因:与应用程序的目标框架的类别有关。
解决方法:
法一:如在属性-->应用程序-->目标框架:将.Net FrameWork4.0 Client Profile 改为.Net FrameWork4.0
法二:将引用的dll升级更高版本(如将log4net.dll从1.2.10.0升级为1.2.11.0)
4、全局程序集缓存引起的问题。应用程序的目标框架,引用的dll都正确,却报错。如:程序代码及nhibernate.dll引用的log4net.dll的1.2.10.0版本,编译正常,运行报:“未能加载文件或程序集或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。”
原因:
1)全局程序集缓存中的dll版本与引用的版本不一致。全局程序集缓存中的log4net.dll版本是1.2.11.0;
2)引用的1.2.10.0版本的dll名不是log4net.dll而是log4net10.dll
解决方法:法一、在全局程序集缓存中卸载高版本dll、安装低版本dll(如:log4net.dll 卸载1.2.11.0版安装1.2.10.0)
法二:将法一中的安装低版本dll(如:log4net.dll 卸载1.2.11.0版安装1.2.10.0)改为:首次加载dll时,dll名与空间名一致(如:将引用的1.2.10.0版本的dll名log4net10.dll改回log4net.dll)
安装dll在全局程序集缓存中需要dll名和空间名一致,否则安装不上。
注:1)打开GAC(全局程序集缓存):开始菜单-Microsoft Visual Studio -Visual Studio Tools-Visual Studio 2008 命令提示,在控制台中输入 gacutil.exe
2)若无法卸载全局程序集缓存内dll: 一个或多个应用程序需要此程序集。则查看“挂起引用”中的程序,先卸载掉(如:HTML5PointSDK)再卸载全局程序集缓存内dll
3)卸载:gacutil.exe /u log4net;安装:gacutil.exe /i E:\working\Build\PMaker.Build\bin\log4net.dll
6、程序权限问题
VS中遇到的奇怪问题的更多相关文章
- 大侠稍等!URL 中为何出现奇怪的字符
为什么中文名称的图片打开后网址是一串乱码?为什么好好的短网址复制粘贴就变长了一大长串?罪魁祸首居然是-- 杭州终于出梅了!二狗子看到气象台发布的消息,开心的不得了.杭州的雨从五月底一直下,每天除了雨还 ...
- CAN开发中遇到的奇怪问题
问题背景: 之前在做USBCAN2开发过程中,遇到一个奇葩问题,当我们加上其中某一句代码时,我们的程序会走不下去,得不到数据,而且在调试的过程中,你也不能暂停,不然,你也得不到数据.后来参考网上一篇帖 ...
- Node.js中 express-session的奇怪问题
var session = require('express-session'); app.use(cookieParser()); 行 登录以后访问的时候有时候会报这样的错误: The la ...
- ArcGISEngine中GP工具奇怪错误问题error(s) have been detected for layer
运行时环境:使用CADToGeodatabase工具执行DWG文件转gdb过程,多次执行(即执行完一个dwg转gdb,再执行另一个dwg转gdb),执行失败 错误描述:首先执行CADToGeodata ...
- C# winform中组合键奇怪不响应问题
再winform中使用ProcessCmdKey处理快捷键响应,针对单一快捷键响应没有任何问题.但是针对组合键总是无法响应,如下: protected override bool ProcessCmd ...
- odoo views中html的奇怪问题
在我创建了字段类型为 fields.Html 以后,确出现了两种不同的情况 下图中,content是此类型的,可以正常显示不需要加widget(小部件)="html" <fo ...
- JavaScript中的"奇奇怪怪"
filter等方法的隐式转化 var list = [1,,2,,0,5,9];console.log(list[1]); // console: undefinedconsole.log(list[ ...
- NHibernate中session.update()及session.merge()的区别
今天的工作中遇到一个奇怪的问题,如下: "a different object with the same identifier value was already associated w ...
- vagrant nginx php开发环境中浏览器访问js文件,文件中出现乱码的解决方法
当nginx配置 sendfile设置为on时,某些js文件中会出现奇怪的字符: ����������������� 不管怎么刷新,重启服务都无效: 通过google搜索之后发现原来是因为开启send ...
随机推荐
- iOS UICollectionView之-(水平滚动)
#import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @pr ...
- ios - 图片自动轮播定时器(NSTimer)以及消息循环模式简介
本文只是演示如何设置图片轮播的定时器. 创建全局变量NSTimer 程序启动后就开始轮播图片,所以在- (void)viewDidLoad中就启动定时器. 将定时器放入消息循环池中.- (void)v ...
- python AES 双向对称加密解密
高级加密标准(Advanced Encryption Standard,AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准.这个标准用来替代原先的DES,已经被多方分 ...
- mysql -prompt选项
使用-pormpt修改提示符.可以在登录时或者在登录后使用prompt选项来修改提示符 (1)使用mysql命令行参数修改提示符 # mysql -u root -p Enter password: ...
- jquery对strutrs2 <s:radio>标签的设置和取值
今天郁闷了1小时. 需求是这样的: <s:radio list="#{0:'男',1:'女'}" value="member.sex" id=" ...
- 理解JDBC和JNDI
下面的英文是我找过来的,因为是英文所以不敢翻译出来误导别人,但是它描述的确实恰到好处,比所谓网上的JNDI和JDBC云云的解释要精辟很多,如果遇到不认识的单词,用有道吧~~:) The Java Na ...
- 一个想了好几天的问题——关于8086cpu自己编写9号中断不能单步的问题
在<汇编语言>第十五章中我们可能遇到这样的问题:程序运行正确,但是debug单步调试,却无法运行,修改int 9h中断例程入口地址的指令,虚拟模式下,debug提示指令无效, ...
- Effective C++ 6.继承与面向对象设计
//条款32:确定你的public继承塑模出is-a关系 // 1.public继承意味着is-a的关系,适用在基类上的方法都能用于派生类上. //条款33:避免遮掩继承而来的名称 // 1.在pub ...
- 数dp多少个0-n多少0-9
#include <bits/stdc++.h> using namespace std; const int N = 15; int n; int dp[N][N][N]; int a[ ...
- android课程表的实现
//图片下方的码段主要实现了课程表所要显示的基本布局,采用ondraw的方法. //别的内容可以根据自己兴趣添加,下面是本人做的,仅供参考. package com. ...