本网页所有文字内容由 imapbox邮箱云存储,邮箱网盘, iurlBox网页地址收藏管理器 下载并得到。
ImapBox 邮箱网盘 工具地址: https://www.imapbox.com/download/ImapBox.5.5.1_Build20141205_CHS_Bit32.exe
PC6下载站地址:PC6下载站分流下载
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox 网页视频 工具地址: https://www.imapbox.com/download/ImovieBox4.7.0_Build20141115_CHS.exe
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
在操作数据库时遇到一个问题:win7 sp1上编译ADO程序,在win7 sp1以下版本不能运行,(Win7系统下需要的动态文件与XP系统的需要的动态链接库不一样。需要根据系统的版本加载动态链接库。)
Win7 系统下:
需要的动态链接库
#import "MSADO15.DLL" rename_namespace("ADOWE") rename("EOF","EndOfFile")
Win XP下
#import "msado60.tlb" rename_namespace("ADOWE") rename("EOF", "adoEOF")
在定义类之前添加如下语句实现版本控制:
#if ((_WIN32_WINNT )==(_WIN32_WINNT_WINXP))
#import "msado60.tlb" rename_namespace("ADOWE") rename("EOF", "adoEOF")
#elif ((_WIN32_WINNT)==(_WIN32_WINNT_WIN7))
#import "MSADO15.DLL" rename_namespace("ADOWE")
#endif
从而能实现将程序从Win7系统拷入到XP系统中能够正常打开数据库。
在控制台环境下测试 版本控制指令:
#include <windows.h>
#include<iostream>
using namespace std;
#if ((_WIN32_WINNT )==(_WIN32_WINNT_WINXP))
int Version=1; //预编译 在预编译外面定义全局变量 然后在预编译语句 //中赋值。对变量赋值发生在编译过程,而预编译是只是实现一个简单的替换。
#elif ((_WIN32_WINNT)==(_WIN32_WINNT_WIN7))
int Version=2;
#else
int Version=3;
#endif
/*
错误写法:
int Version ;
#if ((_WIN32_WINNT )==(_WIN32_WINNT_WINXP))
Version=1; //无法识别Version 类型 导致程序中全局变量一直是0.
#elif ((_WIN32_WINNT)==(_WIN32_WINNT_WIN7))
Version=2; //无法识别Version 类型
#else
Version=3; //无法识别Version 类型
#endif
*/
void main()
{
if(Version==1)
cout<<"Window XP!"<<endl;
else if(Version==2)
cout<<"Window 7"<<endl;
else
cout<<"未定义操作系统"<<endl;
}
在Win7系统下运行程序 输出:Window 7
阅读和此文章类似的: 程序员专区