本文主要帮助人们学习如何在Visual Studio2010中搭建编译ProC环境
\1.增加必要的环境变量
先根据本机环境情况增加环境变量,在后面的预编译命令中将被使用。本例中这两个环境变量的值分别是:
USERID=用户名/密码@服务名
ORACLE_HOME=D:\Environment\OracleClient\oracle\product\10.2.0\client_1
MSNETDir=D:\Environment\VisualStudio\myinstall\VC
说明:
USERID定义了一个Oracle数据库连接字符串
MSNETDir是自己VisualStudio2010的安装目录,需要用到里面的VC的头,如<stdio.h>等都在此目录的include下,用户在这里需要根据自己的安装目录自定义此值,可以通过在安装目录查找stdio.h的方式快速定位。
注意:
1必须保证自己的系统已经安装了OracleClient或者OracleDataBase并且已经启动后台数据库了。安装OracleClient或者OracleDataBase的目的是为了使用Client连接数据库。如我的安装目录为:
D:\Environment\OracleClient\oracle\product\10.2.0\client_1
这里只安装了OracleClient.
2请先用Oracle客户端Net Configuration Assistant检测你的本地服务名是否能正确连接到你的数据库。
2.通过【属性管理器】设置,项目的可执行文件、包含文件、库文件等目录。
1首先在Visual Studio2010中新建一个Win32控制台的空项目.
2打开【视图】-【其他窗口】-【属性管理器】
3打开【属性管理器】下的刚刚新建的项目,双击Microsoft.Cpp.Win32.user,开始设置VC++目录。
4设置ExecutablePath(可执行文件目录)目录
添加
D:\Environment\OracleClient\oracle\product\10.2.0\client_1\BIN
或者使用$ORACLE_HOME\BIN相对路径。
5设置IncludePath(包含目录)目录
添加
D:\Environment\OracleClient\oracle\product\10.2.0\client_1\oci\include
D:\Environment\OracleClient\oracle\product\10.2.0\client_1\precomp\public
或者使用$ORACLE_HOME\oci\include
$ORACLE_HOME\precomp\public相对路径。
6设置ReferencePath(引用目录)目录
添加
D:\Environment\OracleClient\oracle\product\10.2.0\client_1\precomp\LIB
或者使用$ORACLE_HOME\precomp\LIB相对路径。
7设置LibarayPath(库目录)目录
添加
D:\Environment\OracleClient\oracle\product\10.2.0\client_1\oci\lib\msvc
D:\Environment\OracleClient\oracle\product\10.2.0\client_1\precomp\LIB
8打开界面左侧的【链接器】,选择第一项【附加依赖性】,编辑
添加
oci.lib
ociw32.lib
orasql10.lib
3.测试代码
回到第二步新建的项目,右键-【添加】-【新建项】添加一个cpp文件
拷贝下面的代码:
#include<stdio.h>
#include<stdlib.h>
#include<sqlca.h>
#include<oraca.h>
#include<sqlcpr.h>
intmain(int argc, char *argv[])
{
char sResult[20]="";
char sConnectString[100]="用户名/密码@数据库服务名";/*连接串,根据实际情况*/
printf("We Will connect to%s!\n",sConnectString);
EXEC SQL WHENEVER SQLERROR goto error;
EXEC SQL connect :sConnectString;
printf("connected!\n");
//下面的代码应该根据,自己的数据库不同,添加不同的SQL
EXEC SQL select XX into : sResult
from tXXXx t
where t.XXXXXXX=1000;
printf("Result is %s!\n", sResult);
return 0;
error:
printf("SQLERROR!\n");
return -2;
}
注意:本段代码需要用户根据自己数据库的不同,修改相应的字段!!!!有两处
1. 数据库连接
2. 查询语句
4.配置Main.pc的属性
选择Mian.pc,右键-【属性】,进行如下编辑后,点击应用,发现右侧导航有变化!
1. 编辑命令行
输入以下代码
proc iname="%(FileName).pc"oname="%(FileName).c" include="$(ORACLE_HOME)\oci\include"include="$(ORACLE_HOME)\precomp\public" include="$(MSNETDir)\include"include="$(InputDir)\..\public" PARSE=FULL MODE=ORACLE DBMS=V8UNSAFE_NULL=YES LINES=YES SQLCHECK=SEMANTICS USERID=$(USERID) DEFINE=WINDOWS
cl /c /Zi /Od -DDEBUG -DWINDOWS -D "WINDOWS"/Fo"%(FileName).obj" "%(FileName).c" /nologo /W1 -I.-I"$(ORACLE_HOME)\oci\include"-I"$(ORACLE_HOME)\precomp\public" -I"$(MSNETDir)\include"-I"$(InputDir)\..\public"
2. 输出
输入以下代码
%(FileName).obj
3.编译
编译成功后直接按F5就可以运行啦!!!
注意:
为了查看方便,应该设置MSBuild,方便查看信息。这样设置了之后,输出项里面的参数很多,会爆出bug的位置还有传入传出参数等。
多分享,多受益。
我为人人,人人为我。
赠人玫瑰,手留余香。
举手之劳,心怀感激。
点击链接刷刷流量:淘宝小店