VMWare Workstation 7 及序列号
2009-10-02 22:03 VMWare 7.0 185517 技术预览版 [附 Key]
更新不详.
VMWare Workstation 7.0 序列号 激活码
Key: H140T-H0J41-48180-01CUK-24PMC
本人已经安装并测试,该序列号可以正常使用。
vmware 7.0 关闭调试debug模式的方法 2009-10-02 22:02
VMware一直是我非常喜欢的软件,也一直觉得虚拟机是今后电脑发展的一个重要方向。
在单位和家里我都在实用虚拟机。单位里我实用VMware实现分别连接内网和外网;在家里,我用VMware是为了在Vista出现兼容问题时能够用XP来解决问题。
前些天升级了VMware,目前最新的测试版:VMware Workstation e.x.p 7.0。这个版本的界面漂亮不少,而且加入了有趣的Unity功能。支持3d功能。
但在升级之后,发现速度变得非常慢,而且影响到了主机的运行,在每次启动虚拟机时会提示虚拟机运行在Debug mode,并且在测试版本中无法关闭debug mode。在系统进程中也会发现,VMware的主要进程是vmware-vmx-debug.exe,系统占用率非常的高,特别是对系统I/O的占用。
G了一下,找到一个关闭Debug 模式的简单方法:
1.重命名『C:\Program Files\VMware\VMware Workstation\ 』(默认安装目录情况)下vmware-vmx-debug.exe,如(vmware-vmx-debug.exe.bak)以备今后需要
2.复制同目录下vmware-vmx.exe文件为新文件名:vmware-vmx-debug.exe
其实就是用正常模式的进程替换了debuge模式进程。
VC 使用ADO时如何初始化com
2009-10-02 18:44
今天使用ADO操作数据库时遇到一个问题,就是每次连接数据库时返回 非法空指针的bug。
最后发现啥ADO COM组件没有初始化导致,下面给出ADO COM组件的初始化方法:
因为VC里面每个方法的定义,甚至每个变量的定义都按照指定的途径来定义,否则就会出这样或那样的问题 .为了扩大自己的知识面,还是决定尝试着玩玩,准备写了小的连接数据库显示数据的程序,结果却失败了,在运行的时候系统提示说
Runtime Erro!
This application has requested the runtime to terminate it in an unusual way.
Please contact the application support team for more infomation.
经过对错误信息的输出发现是"数据库连接失败:无效指针",经过单步调试发现,我建立的connection对象的指针的地址值始终为0x000000,所以很肯定是它没有被初始化.
我的错误代码如下:
try{
//实例化ADO对象
Mycon.CreateInstance(__uuidof(Connection));
//设置连接字符串
CString strConnect="DRIVER={Microsoft Access Driver (*.mdb)};\
uid=;pwd=;DBQ=shujuku.mdb;";
//使用Open方法连接数据库
Mycon->Open((_bstr_t)strConnect,"","",adModeUnknown);
Source=shujuku.mdb","","",adModeUnknown);///连接数据库
//设置查询字符串
_bstr_t bstrSQL = "select * from employees ";
//创建记录集指针对象实例
MyRS.CreateInstance(__uuidof(Recordset));
//打开记录集
MyRS->Open(bstrSQL,Mycon.GetInterfacePtr(),adOpenDynamic,
adLockOptimistic,adCmdText);
//遍历记录集
while(!MyRS->adoEOF)
{
m_mylist.AddString((char*)(_bstr_t)MyRS->GetCollect("name"));
//将记录集指针移动到下一条记录
MyRS->MoveNext();
}
}
catch(_com_error e)///捕捉异常
{
CString errormessage;
errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
AfxMessageBox(errormessage);///显示错误信息
}
后来查资料知道,ADO是com组件,它必须先进行初始才能够正常使用,初始方法是在代码前加入一行:
CoInitialize(NULL);
当然,最好在代码结束的地方加一行
CoUninitialize();
那么,程序就能够正常运行了.
总结一下,在MFC中可以用AfxOleInit();但在非MFC环境下一定要用CoInitialize().有部分高深者习惯将CoInitialize()放在工程的APP类的InitialInstance()中,所以在直接调用ADO联机的地方看不到它,但千万不要以为没有它也能调用ADO进行数据访问哦!
这里小女子写出来,希望对象我这样遇到同样的困扰的人有帮助哦。
