摘要: 使用 DEF 文件从 DLL 导出模块定义 (.def) 文件是包含一个或多个描述 DLL 各种属性的 Module 语句的文本文件。如果不使用 __declspec(dllexport) 关键字导出 DLL 的函数,则 DLL 需要 .def 文件。.def 文件必须至少包含下列模块定义语句:文件中的第一个语句必须是 LIBRARY 语句。此语句将 .def 文件标识为属于 DLL。LIBRARY 语句的后面是 DLL 的名称。链接器将此名称放到 DLL 的导入库中。EXPORTS 语句列出名称,可能的话还会列出 DLL 导出函数的序号值。通过在函数名的后面加上 @ 符和一个数字,给函数分配 阅读全文
posted @ 2009-03-27 15:15 dzqabc 阅读(808) 评论(0) 推荐(0) 编辑
摘要: typedef 的用法用途一: 定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如: char* pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, // 和一个字符变量; 以下则可行: typedef char* PCHAR; PCHAR pa, pb; 用途二: 用在旧的 C 代码中,帮助 struct 。以前的代码中,声明 struct 新对象时,必须要带上 struct ,即形式为: struct 结构名对象名,如: struct tagPOINT1 { int x; int y; }; struct tagPOINT1 p1 阅读全文
posted @ 2009-03-27 10:37 dzqabc 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 『通过GetProcAddress函数动态调用dll中地函数,是否必须通过extern C声明导出函数?』 通过GetProcAddress函数动态调用dll中的函数,是否必须通过extern "C"声明导出函数? [已结贴,结贴人:darongtou] 如题,网上搜了N多资料,一直找不到确定的答案,目前我的答案是“是”。 晚上因为一个程序,好好研究了一下。 很多资料上都只是说明“如果没有 extern "C" 修饰,输出函数仅仅能从 C++ 代码中调用。” 却并没有明确这个调用是通过显式调用还是隐式调用,我也一直没有看到过有代码是通过显示调用没有ext 阅读全文
posted @ 2009-03-26 17:47 dzqabc 阅读(1540) 评论(0) 推荐(0) 编辑
摘要: 关于C++中函数指针的使用(包含对typedef用法的讨论) (一)简单的函数指针的应用。//形式1:返回类型(*函数名)(参数表) char (*pFun)(int); char glFun(int a){ return;} void main() { pFun = glFun; (*pFun)(2); } 第一行定义了一个指针变量pFun。首先我们根据前面提到的“形式1”认识到它是一个指向某种函数的指针,这种函数参数是一个int型,返回值是char类型。只有第一句我们还无法使用这个指针,因为我们还未对它进行赋值。 第二行定义了一个函数glFun()。该函数正好是一个以int为参数返回cha 阅读全文
posted @ 2009-03-26 17:45 dzqabc 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 本文说明什么是动态链接库 (DLL) 以及在使用 DLL 时可能发生的各种问题。然后,本文说明在开发您自己的 DLL 时应该考虑的一些高级问题。在说明什么是 DLL 的过程中,本文将说明动态链接方法、DLL 依赖性、DLL 入口点、导出 DLL 函数以及 DLL 故障排除工具。简介对于“适用于”一节中列出的 Microsoft Windows 操作系统,操作系统的大量功能是由动态链接库 (DLL) 提供的。另外,当您在这些 Windows...对于“适用于”一节中列出的 Microsoft Windows 操作系统,操作系统的大量功能是由动态链接库 (DLL) 提供的。另外,当您在这些 Win 阅读全文
posted @ 2009-03-26 17:44 dzqabc 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 常量指针与指针常量 这样连着的两个词,前面的一个通常是修饰部分,中心词是后面一个词。这里的常量指针和指针常量便是如此。 常量指针,表述为“是常量的指针”,它首先应该是一个指针。 指针常量,表述为“是指针的常量”,它首先应该是一个常量。 常量指针,它是一个指针,什么样的指针呢?它是一个指向常量的指针,就是说我们定义了一个常量,比如 const inta=7; 那么我们就可以定义一个常量指针来指向它 const int *p=&a; 也可以分成两步,即 const int *p;p=&a; 那么它有什么作用呢?首先我们来说说常量的属性,因为我们的指针是指向常量的,常量和变量的变量的 阅读全文
posted @ 2009-03-24 10:51 dzqabc 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 从int 到string的几种方法 1. int sprintf( char *buffer, const char *format [, argument] ... ); <stdio.h>例如: int ss; char temp[64]; string str; ss = 1000; sprintf(temp, "%d", ss); string s(temp); //调用string的方法 cout<<s.c_str()<<endl;//1000 cout<<s.size()<<endl; //长度为42. 阅读全文
posted @ 2009-03-21 09:23 dzqabc 阅读(195) 评论(0) 推荐(0) 编辑
摘要: IXMLDOMDocument中的load方法返回值是否有BUGIXMLDOMDocument中load一个xml文件时,返回值和msdn上说的不符MSDN上说的是:ReturnValuesS_OKThevaluereturnedifsuccessful.S_FALSEThevaluereturnediftheloadfails.E_INVALIDARGThevaluereturnediftheisSuccessfulparameterisNull.我是这么使用的:CoInitialize(NULL);IXMLDOMDocumentPtrpDoc=NULL;HRESULThr=pDoc.Cre 阅读全文
posted @ 2009-03-20 08:44 dzqabc 阅读(707) 评论(0) 推荐(0) 编辑
摘要: 关于目录处理的一些函数 一起学习<!--google_ad_client = "pub-7345584400661736";/* 336x280, 创建于 08-4-7,一起美容 */google_ad_slot = "6079382880";google_ad_width = 336;google_ad_height = 280;//--> 在编程时,经常有一些针对目录的操作,如打开目录对话框选择一个目录,直接创建多级目录,直接删除多级目录,判断某个目录是否存在等。本文就这些问题给出编程实现方法,并给出详细的程序代码,供各位编程爱好者参考。 阅读全文
posted @ 2009-03-19 10:18 dzqabc 阅读(497) 评论(0) 推荐(0) 编辑
摘要: namejm版主为了说明截取变量中字符串的问题曾经举过如下这个例子: namejm版主为了说明截取变量中字符串的问题曾经举过如下这个例子: @echo offset str=123456789echo 第一个字符为:%str:~0,1%echo 头两个字符为:%str:~0,2%echo 头5个字符 阅读全文
posted @ 2009-03-18 13:40 dzqabc 阅读(13512) 评论(1) 推荐(0) 编辑