首页 > 开发 > 综合 > 正文

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

2024-07-21 02:06:18
字体:
来源:转载
供稿:网友

本文所讨论的内容基于以下环境:
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文件也可以设置自定义编译步骤。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表