- 博客(8)
- 收藏
- 关注
原创 可变参数宏的一种实现:(Macros with a Variable Number of Arguments)
可变参数宏的一种实现:(Macros with a Variable Number of Arguments)在C99中,宏可以象函数一样,带有可变参数。宏的语法和函数的语法类似。下面有个例子:#define debug(format, ...) fprintf (stderr, format, __VA_ARGS__)但是现在就我所知道的情况,还没有哪个编译器支持C99标准,所以上面
2006-12-28 17:43:00 1098
原创 在DLL中产生对话框的方法三(C# DLL)
前面讲了MFC Regular Dll中产生对话框的方法,还有一种MFC Extention Dll,但是因为他本身有很多限制,已经有被淘汰的趋势,所以最好采用Win32 Dll或者MFC Regular Dll,当然最简单的方法还是接下来的C# Dll,因为所有的一切都已经被封装到.net framework中了,什么窗口过程,什么句柄,消息循环等等都不用我们操心了,唯一的缺点是需
2006-12-26 13:31:00 3294
原创 在DLL中产生对话框的方法二(MFC Regular DLL)
在MFC Regular Dll 中创建modal对话框 在MFC Regular Dll中创建modal对话框非常简单,Cdialog基类提供有一个方法DoModal(),能够创建一个modal对话框,因此在MFC Regular Dll中创建modal对话框,仅仅需要自己继承对话框基类,在导出函数中调用DoModal就可以了. 在MFC Regular Dll 中创建
2006-12-26 11:46:00 6907
原创 在DLL中产生对话框的方法一(Win32 DLL)
什么是Dll? Stands for "Dynamic Link Library." A DLL (.dll) file contains a library of functions and other information that can be accessed by a Windows program. When a program is launched, link
2006-12-19 12:46:00 10433 1
原创 补充:测量程序运行时间的几种方法
在从前写的一篇blog中,我介绍了测量程序运行时间的方法,其中在讲到基于Timer的测量方法时,介绍了一个Win32函数QueryPerformanceCounter(),其实使用这种这个函数比起嵌入汇编的方法还是方便很多,但是也容易引起一些问题。下面是一段示例代码.LARGE_INTEGER freq;LARGE_INTEGER startTime, endTime;LARGE_I
2006-12-15 16:46:00 4908
原创 测量程序运行时间的几种方法
很久之前写的一篇文章了,现在趁着搬家,把它移过来,尽管不够全面,但是一般意义上的工作够用了。测量程序运行时间的几种方法 前一段时间在做一个优化程序性能的项目,为了测试优化的程度,粗略学习了一些测量程序运行时间的技术,www.amazon.co.uk/Computer-Systems-Programmers-Randal-Bryant/dp/013034074X在这个方面几乎没有可以参考的
2006-12-13 11:13:00 8499
原创 为SHBrowseForFolder 设置默认的文件夹
SHBrowseForFolder是一个windows shell函数,可以以目录为单位进行浏览,其函数原型为: LPITEMIDLIST SHBrowseForFolder(LPBROWSEINFOlpbi); 参数lpbi是一个指向结构BROWSEINFO的指针,该结构的定义如下: typedef struct _browseinfo { H
2006-12-12 11:01:00 6880 1
原创 C#中实现动态加载dll库
C#中要使用动态链接库中的导出函数,只能在程序中根据DllAtribute显示调用,无法在运行阶段动态加载,但是我们可以利用WIN32 API的LoadLibrary和FreeLibrary打到目的,问题是根据GetProcAddress()函数获取到的导出函数的地址无法在C#中利用,网上很多方法多是利用对函数调用栈的操作来达到在C#中操作的目的. 其实如果导出函数没有返回值,完
2006-12-12 10:55:00 5589 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人