vc6.0快捷键设置(vc6.0快捷键注释)

从子动态链接库中引入DLL文件,不仅可以实现代码、资源和数据的共享,还可以保护源代码。对于开发者来说,DLL的生成和调试是程序员必须掌握的技术。这里通过一个具体的例子,演示用C/C++语言生成和调用DLL文件的方法。这里的开发工具是一个小巧、精致、快速启动、经典的VC6.0环境,开发后的目录结构如下图所示:

vc6.0快捷键设置(vc6.0快捷键注释)

从目录结构可以看出,这个例子在“E”盘上的文件夹“mydlcode”下创建了一个working room空“mydllcode . dsw”。working room 空包含两项,分别对应于文件夹“MyDllSrc”和“MyDllTest”,前者是一个动态库。

下面详细介绍了创建和调试动态库的过程。

创建工作空间和项目

在VC6.0中,选择菜单“文件”->“新建…”,在弹出的对话框中切换到“工作区”选项页面,依次填写工作区空的名称和位置信息,如下图所示:

工作区创建后,在VC6.0左侧控制面板的FileView中,当前工作区名称为“MyDllCode”,包含的项数为0。右键单击工作区并选择“向工作区添加新项目空…”在弹出的右键菜单中,如下图所示:

在弹出的新建项目对话框中,选择项目类型为Win32动态链接库,项目名称为MyDllSrc。记得勾选“添加到当前工作空”并设置如下图所示:

在弹出的动态库配置对话框中,选择动态库类型为“one 空 DLL项目”,如下图所示,这样就完成了动态库源代码项目的创建。

在同一步骤中,您可以在workshop 空中创建空的测试代码项目。与动态库源代码项目不同的是,项目类型是Win32控制台应用程序的控制台程序,项目名称是MyDllTest。

work 空之间的项目创建后,会显示在VC6.0左侧控制面板的“文件视图”中,如下图所示。此时有两个项目,都是空项目,没有任何源代码文件:

设置工程输出目录

该示例包括动态库源代码项目和测试代码项目(即调试项目)。为方便调试,将两个项目的输出文件目录设置在同一个目录下,如工作室空中与“MyDllCode.dsw”相同的目录,避免了手动将动态库dll文件复制到exe所在目录的麻烦。对于“调试”模式,在VC6.0中选择菜单“工程”->:直接设置或按Alt+F7快捷键,在弹出的项目对话框中选择项目MyDllSrc,在右侧的连接选项卡页面中修改输出文件名,由原来默认的“Debug/MyDllSrc.dll”修改为“../Debug/MyDll.dll “,即把生成的“MyDll.dll”文件修改到当前项目目录下。以同样的方式,将项目“MyDllTest”文件的输出目录修改为“../Debug/MyDllTest.exe “如下图所示:

对于“Release”模式,与上面完全相同,项目“MyDllSrc”和“MyDllTest”的文件输出目录修改为“../Release/MyDll.dll “和”../Release/MyDllTest.exe “。

编写动态库工程源代码文件

创建一个新的头文件“MyDll.h”,在VC6.0中选择菜单“文件”->“新建…”在弹出的新建文件对话框中进行设置如下图所示。记得勾选“添加到项目”为“MyDllSrc”。

在新创建的“MyDll.h”文件中,代码如下:

同样,使用以下代码创建一个新的C++源文件“MyDll.cpp ”:

在动态库工程中,定义并导出了一个函数“MyFunc ”,它产生等间隔的数据向量,并返回数据向量的最后值和状态信息。宏“EXPORT”在头文件中定义为“extern”C“_ _ declspec(dll EXPORT)”,表明该函数的调用约定为“C”,在其他编程语言中调用该函数时,调用约定必须一致。编译后,您可以在目录“E:\MyDllCode\Debug”中获得动态库文件“MyDll.dll”。

编写测试工程(调试工程)源代码文件

类似于写动态库源代码文件,新建一个测试代码C++源文件“main.cpp”,记得勾选“添加到项目”为“MyDllTest”。代码如下:

在代码中,动态库的头文件由“# include”引入../mydlsrc/mydll.h “,lib文件由#pragma宏引入。请注意,必须正确设置路径。编译后可以在目录“E:\MyDllCode\Debug”下得到可执行程序“MyDllTest.exe”文件,运行结果如下:

可以看出在调试代码工程中已经正确调用了“MyFunc”函数。

结论

上面给出了在VC6.0中创建和调试动态库的全过程。在VS2008和VS2010等其他ide中,配置过程类似。另外需要注意的是,由于本例将动态库项目和调试项目放在同一个工作室空,所以在单步调试中,如果在调用函数的行中设置了断点,则不需要额外设置,它会自动进入动态库项目的源代码“MyDll.cpp”中观察“MyFunc”函数的执行情况。

关注,私信回复:“C008”,即可获得VC6.0环境的工程源代码。

欢迎关注,一起交流。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。

作者:美站资讯,如若转载,请注明出处:https://www.meizw.com/n/273628.html

发表回复

登录后才能评论