摘要: http://www.cnblogs.com/hanxi/archive/2012/11/04/2753993.html一、C①基本函数实现swap()reverse()void reverse(char s[],int longest){ char c; int i=0; if (longest>1) { for (i=0;i<longest-1;i++) { c=s[i]; s[i]=s[i+1];/* 依次交换数组中相邻的数组元素 */ s[i+1]=c; } longest--; reverse (s,lon... 阅读全文
posted @ 2012-11-04 18:53 全绍辉 阅读(364) 评论(0) 推荐(0) 编辑
摘要: API之进程和线程函数CancelWaitableTimer 这个函数用于取消一个可以等待下去的计时器操作CallNamedPipe 这个函数由一个希望通过管道通信的一个客户进程调用ConnectNamedPipe 指示一台服务器等待下去,直至客户机同一个命名管道连接CreateEvent 创建一个事件对象CreateMailslot 创建一个邮路。返回的句柄由邮路服务器使用(收件人)CreateMutex 创建一个互斥体(MUTEX)CreateNamedPipe 创建一个命名管道。返回的句柄由管道的服务器端使用CreatePipe 创建一个匿名管道CreateProcess 创建一个新进程 阅读全文
posted @ 2012-11-04 14:18 全绍辉 阅读(324) 评论(0) 推荐(0) 编辑
摘要: 1 文件映射进程间通信 文件映射(Memory-Mapped Files)能使进程把文件内容当作进程地址区间一块内存那样来对待。因此,进程不必使用文件I/O操作,只需简单的指针操作就可读取和修改文件的内容。 Win32 API允许多个进程访问同一文件映射对象,各个进程在它自己的地址空间里接收内存的指针。通过使用这些指针,不同进程就可以读或修改文件的内容,实现了对文件中数据的共享。 应用程序有三种方法来使多个进程共享一个文件映射对象。 (1)继承:第一个进程建立文件映射对象,它的子进程继承该对象的句柄。 (2)命名文件映射:第一个进程在建立文件映射对象时可以给该对象指定一个名字(可与文... 阅读全文
posted @ 2012-11-04 14:02 全绍辉 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 1、全局钩子,监听键盘字符:钩子函数导出:HHOOK Hook;LRESULT CALLBACK Hookkey(int nCode,WPARAM wParam,LPARAM lParam);void Savekey(char* c);__declspec(dllexport)void WINAPI OutEv()//安装全局钩子{ Hook=(HHOOK)SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)Hookkey,theApp.m_hInstance,0);}LRESULT CALLBACK Hookkey(int nCode,WPARAM wParam,L 阅读全文
posted @ 2012-11-04 01:31 全绍辉 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 1、显示调用DLL方式:typedef float (*MyCalculate)(float,float,int); //宏定义floatcalculate函数指针类型 HINSTANCE hdll; //DLL的句柄 MyCalculate calfunc;//函数指针 hdll=LoadLibrary("..\\debug\\FloatCalDLL.dll"); //LoadLibrary函数装载DLL if(hdll!=NULL) { //GetProcAddress函数获得calculate函数地址 calfunc=(MyCalculate)GetProcAd... 阅读全文
posted @ 2012-11-04 00:56 全绍辉 阅读(278) 评论(0) 推荐(1) 编辑