- 博客(23)
- 资源 (1)
- 收藏
- 关注
转载 Shlwapi.dll(以Path,SH,Str开头的函数)
Shlwapi.dll(以Path,SH,Str开头的函数) 2012-05-12 09:10:26| 分类: VC函数|举报|字号 订阅转:http://blog.sina.com.cn/s/blog_60fc9f140100rd2z.htmlMSDN上有关Path的函数说明:http://msdn.microsoft.com/en-us/
2014-12-17 12:02:37
1173
翻译 memset;wmemset(源自msdn)
以下源自msdn:void *memset( void *dest, int c, size_t count );wchar_t *wmemset( wchar_t *dest, wchar_t c, size_t count);
2014-09-13 10:49:58
831
转载 error cannot convert from 'std::_Vector_iterator<_Ty,_Alloc>
对于 向量类的错误vector比如error C2440: 'type cast' : cannot convert from 'std::_Vector_iterator' to 'cvpoint*'这是由于vc6.0和vs2005不同的编译规则引起的,一般在vc6.0中可以通过的,在vs2005就会出现这样的错误,解决办法:定义:cvpoint * pt;typedef vec
2014-09-09 11:12:54
2095
原创 线程同步使用方法:CMutex_CEvent_关键代码段
《WIndows核心编程》机械工艺出版社:深入的了解多线程和线程同步的问题3个的使用范围:1. CMutex、CEvent、关键代码段CMutex、CEvent:属于内核对象,速度比较慢,但可以拥有跨进程的线程同步关键代码段:工作于用户方式下,同步速度快,可能会造成死锁,不能拥有跨进程同步1. CEvent1.1 CEvent g_event=CreateEvent(NUL
2013-04-29 22:38:30
899
原创 PostMessage - SendMessage
1. CWnd::PostMessageBool PostMessage(UINT message,WPARAM wParam=0,LPARAM lParam=0);返回值:Nonzero if the message is posted; otherwise 0.(即消息是否提交成功)说明:将消息放入windows消息队列,就直接返回,需要通过使用GetMessage或PeekMes
2013-04-14 11:11:34
607
原创 CSemaphore/CMutex/CCriticalSection/CEvent区别
摘录:http://mist99.blog.163.com/blog/static/6285599320081191040103/如果某个线程必须等待某些事件发生后才能存取相应的资源,用CEvent;如果一个应用同时可以有多个线程存取相应资源,用CSemaphore;如果有多个应用(多个进程)同时存取相应资源,用CMutex,否则用CCriticalSection。 CCriti
2013-04-13 09:24:34
568
原创 易艾斯德面试-sizeof-参数
#include "stdafx.h"#include "stdlib.h"void fun1(char str[26]);int _tmain(int argc, _TCHAR* argv[]){ char str[100]; fun1(str); system("pause"); return 0;}void fun1(char str[26]){
2013-04-11 10:00:31
576
原创 恒和大风 - 机试题
1. 不用string.h实现一句话的逆序输出char c[] = "abcdefg";int c_length = sizeof(c)-1;char* pszOut = (char*)malloc(c_length+1);char* temp_pszOut = pszOut;while (c_length-->0){*temp_pszOut++ = *(c +
2013-04-05 16:37:32
1025
转载 SQL_存储过程_什么情况下使用方便
摘自:http://www.cnblogs.com/jack-liang/archive/2011/08/08/2130648.html什么时候使用存储过程比较适合? 当一个事务涉及到多个SQL语句时或者涉及到对多个表的操作时就要考虑用存储过程;当在一个事务的完成需要很复杂的商业逻辑时(比如,对多个数据的操作,对多个状态的判断更改等)要考虑;还有就是比较复杂的统计和汇总也要考虑,但是过多的
2013-03-28 11:27:31
821
原创 SQL_存储过程_增删改查用
注:PROCEDURE可简写作:proc>> 增:简单情形: CREATE PROCEDURE my_Grade(@number char(8)) AS SELECT student.sno,sname,cname,grade FROM student,xuanxiu,course WHERE student.sno=xuanxiu.sno and cour
2013-03-28 11:04:01
726
原创 MFC_多线程的使用
1. 使用的头文件#include "afxmt.h" //添加"afxmt.h"实现文件中能够正确使用同步类CSemaphore关键理解:CSemaphore sem_Write(2,2); //资源最多访问线程2个,当前可访问线程数2个 函数一:WaitForSingleObject 函数用来检测hHandle事件的信号状态,当函数的执行时间超过 dwMil
2013-03-26 22:58:01
548
原创 MFC_SOCKET_关于socket的服务端与客户端的通信
1. 如何创建socket对象成功1.1 创建socket对象用到的头文件:#include #include #pragma comment(lib, "ws2_32")创建对象:SOCKET sock = socket(2, 1, 0);if (INVALID_SOCKET != sock){AfxMessageBox("成功");}else
2013-03-25 23:18:48
812
原创 MFC_CMenu_CIconMenu_带图标的菜单
效果图:1. 如何修改单文档的标题(注:一个窗口的图标是由两部分组成的:文档标题+应用标题,此处修改的是文档标题)在*doc.h中添加:virtual void SetTitle(LPCTSTR lpszTitle);之后实现:void ***Doc::SetTitle(LPCTSTR lpszTitle) { lpszTitle = "带图标的程序菜单";
2013-03-24 11:25:56
3579
原创 MFC_BitmapTool(点击图标做相应的操作)
效果图:它的作用:点图标实现一个功能,该图标通过bitmap来实现1. 新建一个bitmap文件2. 在OnInitDialog()中,添加代码// 对每个图标设置资源IDUINT array[10];for (int i = 0;i{if (i ==3)array[i]= ID_SEPARATOR; //第四个按钮为分隔条elsearray[i
2013-03-24 09:38:23
683
原创 MFC_如何连接Access数据库_读取出的数据显示在树上
第一部分:如何建立连接1. stdafx.h中添加:#import "c:\Program Files\\Common Files\\System\\ado\\msado15.dll" re_namespace ADODB \rename("EOF","ADOEOF")using namespace ADODB;2. 在当前应用的cpp里定义(和theApp的定义放一起):
2013-03-24 09:05:22
947
原创 MFC_CMenu_AppendMenu_基于dialog的动态创建menu
标题:基于dialog的动态创建menu使用方法:1. 在对话框的OnInitDialog()中SetMenu(&m_menu),主要是对m_menu的编辑2. 根 菜 单:m_menu.CreateMenu(); //如:“基础信息管理”、“系统管理” 弹出菜单:popmenu.CreatePopupMenu(); //如:“操作员信息” m_menu.Crea
2013-03-23 17:55:28
2739
原创 MFC_CComboBox - 添加字符 - 清空字符 - 获得当前字符 - 获得本机磁盘号
// 添加字符void CCMyComDlg::OnButton1() { CComboBox* combobox1 = (CComboBox*)GetDlgItem(IDC_COMBO1); combobox1->AddString("男"); combobox1->AddString("女"); }// 清空字符void CCMyComDlg::OnButton
2013-03-21 22:09:21
1160
原创 MFC_OnPaint_设置窗口背景图片
1. 不会自动适应窗口大小 CRect rc; GetWindowRect(&rc); CDC *pDC; CDC memdc; CBitmap *olddc; CBitmap bitmap; bitmap.LoadBitmap(IDB_BITMAP1); pDC=this->GetDC(); memdc.CreateCompatibleDC(p
2013-03-21 21:52:10
1263
原创 MFC_OnSize_改变窗口大小(WM_SIZE消息映射)
//当改变窗口大小时,调节控件EDIT的大小void CChgWndDlg::OnSize(UINT nType, int cx, int cy) { CDialog::OnSize(nType, cx, cy); GetDlgItem(IDC_EDIT1)->MoveWindow(10,10,cx-20,cy-10); // 后面的那两个坐标要多减去10} 注:要将窗
2013-03-21 21:05:25
4490
原创 MFC - 进程间传递消息数据
>> SendMessageHWND hwnd=::FindWindow(NULL,"DataMsgClient"); if(hwnd==NULL) { AfxMessageBox("没有找到接受窗体"); return; } CString msgedit; GetDlgItem(IDC_EDIT1)->GetWindowText(msgedit);
2013-03-21 20:55:53
617
原创 MFC - 进程间传递消息命令
对话框:HWND hwnd=::FindWindow(NULL,"ReceiveMsg"); if(hwnd==NULL) { AfxMessageBox("没有找到接受消息的窗体"); return; } ::SendMessage(hwnd,WM_ENABLEBUTTON,0,0);说明:自定义:#define WM_ENABLEBUTTON WM_USER
2013-03-21 20:41:12
604
转载 void *memset(void *s, int ch, unsigned n);
函数原型 void *memset(void *s, int ch, unsigned n); 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向S的指针。需要的头文件 or 程序例 #include #include #include i
2013-03-21 16:15:28
737
COM写的一个弹出错误对话框的程序,用于自己的程序中错误信息的管理
2012-07-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人