- 博客(8)
- 资源 (30)
- 收藏
- 关注
原创 枚举进程ID并且获得进程路径
枚举进程在vc里面一般用CreateToolhelp32Snapshot()函数这个函数的作用是给系统内的所有进程拍一个快照CreateToolhelp32Snapshot 用于获取系统内指定进程的快照,也可以获取被这些进程使用的堆、模块和线程的快照。函数的具体用法是。HANDLE WINAPI CreateToolhelp32Snapshot(DWORD dwFlags,
2012-09-27 22:06:21 5378 1
原创 匿名管道 c++实现
匿名管道是一种未命名的、单向管道通常用来在一个父进程和一个子进程之间传输数据。匿名的管道只能实现本地机器上两个进程间的通信而不能实现跨网络的通信。 #include #include using namespace std;int main(int argc, char* argv[]){ HANDLE hpiperead = NULL , hpipewrite =
2012-09-26 08:48:00 3314 1
原创 线程同步--关键代码段(一)
线程同步有四种方式但是在一个进程中,效率最高的,方式是 :关键代码段 #include #include #include #include using namespace std;DWORD WINAPI ListProc1( LPVOID lpParameter ); // list1线程函数DWORD WINAPI ListProc2( LPVOID
2012-09-20 17:49:35 1064
原创 c++ 截取屏幕图片并保存
屏幕捕捉技术第一步就是抓取屏幕的桌面虽然print screen键可以,但是在实际中就有点不适用了下面的代码可以拷贝到一个函数里面,执行就可以生成一个获取屏幕的bmp文件了 //获取桌面窗口的CDC CDC *pdeskdc = GetDesktopWindow()->GetDC(); CRect re; //获取窗口的大小 GetDesktopWindow()->G
2012-09-19 10:11:55 3845 1
原创 线程安全使用相关注意事项
线程创建遵循下面规律! 1、如果线程函数中只调用Win32 API,就放心用CreateThread; 2、如果要用到C Runtime库,那么就要使用_beginthreadex,并且需要在编译环境中选择UseMultiThread Lib/DLL; 3、MFC程序中使用AfxBeginThread。坚决不要使用_beginthread(无法创建带有安全属性的新线程,
2012-09-10 15:25:02 957
原创 vector 注意事项
最近写一个入门级别的聊天室程序的时候用到动态分配空间,第一联想到的就是vector容器但是客户端连接的时候经常出崩溃的现象经过排查,原来是传递了容器指针!查资料才知道,当添加新的数据进去的时候vector容器在重新分配空间时它会做这样的动作:首先,vector 会申请一块更大的内存块;然后,将原来的数据拷贝到新的内存块中;其次,销毁掉原内存块中的对象(调用对象的析构
2012-09-09 09:51:20 815
原创 动态链接库编程
动态链接库编写基本上可以分为五种方法从使用角度来看,编写程序只有一种最实用! Visual C++支持三种DLL: Non-MFCDLL(非MFC动态库) MFCRegular DLL(MFC规则DLL) MFCExtension DLL(MFC扩展DLL)最常用的当然是Non-MFCDLL,不仅mfc可以用其他的也可以用!
2012-09-08 17:22:59 803
原创 socket编程(二) select 模型
select 模型是winsock中最常见的I/O模型,主要是它能够防止程序在套接字处于阻塞模式的时候经过一次I/O操作后被阻塞,同时也能够防止套接字处于非阻塞模式产生的WSAEWOULDBLOCK错误select模式也是最简单的一个I/O模式 int select( int nfds,fd_set FAR* readfds,fd_set FAR* writefds,fd_
2012-09-01 09:31:33 2000
crossapp CATabBarController
2015-08-23
curl-ssl-ssh curl7.43.0编译完成文件
2015-07-07
c++ 连接 mysql 官方文档
2012-12-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人