在VC++开发环境中整合Pro*C/C++

类别:数据库 点击:0 评论:0 推荐:

本文所讨论的内容基于以下环境:
Microsoft Visual C++ 6.0
ORACLE 8i (8.1.7)

当前版本:1.0 (041221)

声明:本文所述的某些操作可能对系统产生重大影响,请慎重操作!本人不对此产生的任何后果负责!


在VC++开发环境中整合Pro*C/C++

Pro*C/C++为C/C++语言访问ORACLE数据库提供了极大的方便,但是,在编译的时候往往需要在命名行模式下编译pc文件,而目前多数开发都是在VC++这种整合开发环境中完成的,要在两者之间不停的切换,不仅麻烦而且对于调试也相当不便。

在VC++中,提供了对于“自定义编译步骤”的设定,可以让我们自己来定义如何处理PC文件。现作一简单介绍:

首先,确保你安装了ORALCE的Pro*C/C++。

然后,运行Visual C++,打开一个工程文件(Workspace),自定义编译步骤仅可针对某一工程。选择“Project”->“Settings...”。选择设置哪个配置,选“All Configrations”可以覆盖所有配置。

先选中所有项目,点击“Linker”标签,在library列表内加入:oraSQL8.lib 。(不同的ORACLE版本,这个文件名会不同)

点击“Custom Build”标签,在“Commands”编辑框内加入如下内容:
call vcvars32.bat
proc  iname="$(InputDir)\$(InputName).pc"  include="%MSVCDIR%\include"  include="$(MSDEVDIR)\..\vc98\include"  code=cpp parse=partial
这里解释一下:
call vcvars32.bat
这个是用来设置VC的编译环境的。
proc  iname="$(InputDir)\$(InputName).pc"  include="%MSVCDIR%\include"  include="$(MSDEVDIR)\..\vc98\include"  code=cpp parse=partial
这个是直接调用proc的编译程序进行编译,$(InputDir)之类的VC都是会自己替换的,不需要我们手动处理。这里有一点要注意:传给Proc的参数最好加上引号,如果不幸里面有空格,那会被当成是另外一个参数,这种错误是很难查的。

在Outputs中加入如下内容:
$(InputDir)\$(InputName).cpp
这个是告诉VC最后生成的是哪个文件,好让它去取用。

点击“OK”保存,这样我们就可以直接在VC++中编辑Pro*C文件了。

另外,在属性设置中,直接点击pc文件也可以设置自定义编译步骤。

本文地址:http://com.8s8s.com/it/it19654.htm