
问题与总结
carl2380
qq327831278
13141401405
展开
-
test
/////////////////////////////////// marco.h ///////////////////////////////////// TRACE#define TRACE_DATA theApp.TraceData() /////////////////////////////////// SuperEdit.h /原创 2008-11-06 09:17:00 · 398 阅读 · 0 评论 -
CRichEdit文本控件属性下不能预览字体颜色
按照以下方法解决void CTextCtrlPropertyPage02::OnButton1() {..... // clr CRichEditCtrl *pEdit = (CRichEditCtrl *)GetDlgItem(IDC_RICHEDIT1_TEXT); CHARFORMA原创 2008-11-06 09:19:00 · 469 阅读 · 0 评论 -
CListCtrl使用指南
2007-06-05 17:24创建图形列表并和CListCtrl关联:m_image_list.Create(IDB_CALLER2, 16, 10, RGB(192,192, 192));m_image_list.SetBkColor( GetSysColor( COLOR_WINDOW ) );m_caller_list.SetImageList( &m_image_list, LVSI转载 2008-11-06 09:19:00 · 506 阅读 · 0 评论 -
软件打开文件,程序退出,结果文件变成空文件
// BOOL res = CDocument::OnSaveDocument(lpszPathName);//这句话会重写打开的文件,如果在序列化中没有操作,则文件以空文件的形势保存原创 2008-11-06 09:22:00 · 624 阅读 · 0 评论 -
如何从一个CBitmap或是资源位图中截取一部分到另一个CBitmp中
void CSkinAnalyseDoc::GetRectBmp(CBitmap *pDesBmp, CBitmap *pSrcBmp, CRect rc, CView *pParent){// CClientDC MemDC(pParent);// CDC showDC;// showDC.CreateCompatibleDC(&MemDC);//原创 2008-11-06 09:22:00 · 794 阅读 · 0 评论 -
GetDC 与 释放DC
{CDC *pDC = pParent->GetDC();……………… pParent->ReleaseDC(pDC);} Unless the device context belongs to a window class, the ReleaseDC member function must be called to release the context原创 2008-11-06 09:23:00 · 2353 阅读 · 0 评论 -
ScreenToClient 与 CMainFrame非客户区坐标计算
CMainFrame *pWnd; pWnd->ScreenToClient(&pt);//ScreenToClient 由于ScreenToClient计算点相对CMainFrame客户区的偏移, 而不是相对CMainFrame窗口左上角的偏移,所以所有的值都为负,而且是以客户区左上角为零点,这就造成无法定位点在非客户区的位置,如果需要应该: CS原创 2008-11-06 09:23:00 · 650 阅读 · 0 评论 -
CStatic控件的背景色设为透明?
首页>200607053>200607030200607031200607032200607033200607034200607035200607036200607037 请问各位:怎样才能把 CStatic控件的背景色设为透明?主题:请问各位:怎样才能把CStatic控件的背景色设为透明? 顶楼内容: 我把对话框背景色设为一个图片,上面再放CStatic控件的时候,非常难看(因为CSta转载 2008-11-06 09:24:00 · 1594 阅读 · 0 评论 -
time.GetAsSystemTime(cmdheader.commandtime);//BOOL RES = time.GetAsSystemTime(timeDest);无效
改用::GetLocalTime(…)原创 2008-11-06 09:24:00 · 806 阅读 · 0 评论 -
void CXX::OutputMsg01(CString tag, CString str, BOOL clean)
CStdioFile file; BOOL res = FALSE; if (clean) { res = file.Open(strFilePath, CFile::modeCreate|CFile::modeReadWrite); } else { res = file.Open(strFilePath, CFile::modeCreate|CFile::modeNoTruncate|C原创 2008-11-06 09:25:00 · 496 阅读 · 0 评论 -
theApp. m_AppPath 应用程序当前路径
void CClientWorkSpaceApp::ConfigGetAppPath(){ TCHAR path[MAX_PATH]; memset(path,0,sizeof(TCHAR)*MAX_PATH); GetModuleFileName( NULL,path, MAX_PATH ); TCHAR drive[MA原创 2008-11-06 09:25:00 · 727 阅读 · 0 评论 -
如何使程序启动后以托盘图标形式存在
ds原创 2008-11-06 09:26:00 · 595 阅读 · 0 评论 -
Debug/Release Dll报错
每个模块(EXE或DLL)中,都存在一种全局的状态数据,MFC依靠这种全局的状态数据来区分不同的模块,以执行正确的操作。这种数据包括:Windows实例句柄(用于加载资源),指向应用程序当前的CWinApp和CWinThread对象的指针,OLE模块引用计数,以及维护Windows对象句柄与相应的MFC对象实例之间连接的各种映射等。但当应用程序使用多个模块时,每个模块的状态数据不是应用程序范围的。原创 2008-11-06 09:26:00 · 833 阅读 · 0 评论 -
Directx报错01
--------------------Configuration: LDCTextCtrl - Win32 Debug--------------------Compiling...LDCTextControl.cppd3dx9math.h(392) : error C2061: syntax error : identifier THIS_FILEd3dx9math.h(3原创 2008-11-06 09:28:00 · 1299 阅读 · 0 评论 -
Directx报错02
d3dutility.cpp(237) : fatal error C1010: unexpected end of file while looking for precompiled header directive not use precompileor include “stdafx.h”原创 2008-11-06 09:30:00 · 686 阅读 · 0 评论 -
LogFont与CharFormat互相转换
way1: CFontDialog::getcharformatway2:void CTextLine::ChangeLogFontToCharFormat(CHARFORMAT &cf, const LOGFONT lf, const COLORREF textcolor){//CFE_AUTOCOLOR cf.dwMask = CFM_BOLD|CFM_CHARSET|CFM原创 2008-11-06 13:56:00 · 1853 阅读 · 0 评论 -
报错 error C2664: 'CreateWindowExA' : cannot convert parameter 2 from 'unsigned short [10]' to 'const char *'
//创建窗口 HWND hWnd = CreateWindow( L"ClassName", "三维字体", WS_OVERLAPPEDWINDOW, 200, 100, 600,500, GetDesktopWindow(), NULL, wc.hInstance,原创 2008-11-06 16:42:00 · 5287 阅读 · 2 评论 -
如何在CRichEditCtrl控件中直接读如RTF格式的文件
如何在CRichEditCtrl控件中直接读如RTF格式的文件(这个是通过流的方式来读取文件) 如何在CRichEditCtrl控件中直接读如RTF格式的文件 Inserting an RTF string using StreamIn------------------------------------------------------------------转载 2008-11-07 15:37:00 · 1419 阅读 · 0 评论 -
char *内容输出
//test { int i; int width = 32; CString tmp; CString str0; for(i=0; i { //tmp.Format(L"%6.6X", i); tmp.Format(L"%2.2X ", (unsigned char)pData[i]); str0+=tmp;原创 2008-11-07 22:44:00 · 1763 阅读 · 0 评论 -
Edit vs2005环境下,缩略图在vista 下可以显示,在xp下始终不能显示
Edit vs2005环境下,缩略图在vista 下可以显示,在xp下始终不能显示,原因:window xp+vista /BCG版本兼容问题1/vista 下面编译通过的工程,在xp首先要删除无关的工程文件如clw/ncb...2/stdafx要用新的BCG生成的//////////////////////////////////////////////////////////原创 2008-11-13 20:25:00 · 612 阅读 · 0 评论 -
资源模块句柄的切换
产生这个问题的根源在于应用程序与MFC规则DLL共享MFC DLL(或MFC扩展DLL)的程序总是默认使用EXE的资源,我们必须进行资源模块句柄的切换,其实现方法有三: 方法一 在DLL接口函数中使用:AFX_MANAGE_STATE(AfxGetStaticModuleState());我们将DLL中的接口函数ShowDlg改为:void ShowDlg(void){转载 2008-11-26 10:07:00 · 1298 阅读 · 0 评论 -
pRichEdit->SetBackgroundColor(FALSE, oldclr); 只能设置一半 的背景色
添加一句话pRichEdit->EnableWindow(TRUE); COLORREF res = pRichEdit->SetBackgroundColor(FALSE, oldclr); //PrintRichEdit原创 2008-11-28 17:15:00 · 757 阅读 · 0 评论 -
error C2664: 'strcpy' : cannot convert parameter 1 from 'WCHAR [32]' to 'char *'
error C2664: strcpy : cannot convert parameter 1 from WCHAR [32] to char * strcpy(m_ntfIcon.szTip,w_tip); --->lstrcpyW(m_ntfIcon.szTip,w_tip);转载 2008-12-09 15:04:00 · 3884 阅读 · 0 评论 -
vs2005开发环境从C#改为C++开发布局
随心所欲的设置你的vs2005开发环境 http://dotnet.itpub.net/post/20969/270707 如果想改变成其它,如C#的开发环境,可以这样:工具/导入导出设置,选择重置原创 2009-08-14 23:11:00 · 2012 阅读 · 0 评论 -
无边框窗口实现拖拉效果
实现效果需要处理以下这三个消息:WM_NCHITTEST WM_SETCURSOR WM_NCLBUTTONDOWN UINT CXXXDlg::OnNcHitTest(UINT nHitTest, CPoint point)...{ // TODO: 在此添加消息处理程序代码和/或调用默认值 CRect rect; CRect rect1; GetWindowRect(原创 2009-08-31 11:29:00 · 1475 阅读 · 1 评论 -
CView和CMainFrame 创建标记菜单,CheckMenu
一般做法: 在MFC Program时候,当对菜单进行创建标记菜单项的时候,可以在CMainFrame的OnCreate函数中通过如下代码实现:GetMenu()->GetSubMenu(5)->CheckMenuItem(0,MF_BYPOSITION | MF_UNCHECKED); 可是我们有时候由于某些特殊的要求要在CView类中实现该功能,如果直接在C原创 2009-08-31 10:25:00 · 849 阅读 · 0 评论 -
Dll 中创建非模式对话框 报错
AFX_MANAGE_STATE(AfxGetStaticModuleState()); CPanel *dlg=new CPanel(); dlg->Create(IDD_PANEL,parent); dlg->ShowWindow(SW_SHOW); void CWnd::AssertValid() const {原创 2009-09-04 16:23:00 · 750 阅读 · 0 评论 -
点击CRichEdit ctrl 后如何获得当前点击位置
点击CRichEdit ctrl 后的消息消息映射 是 OnCaptureChanged 消息, 在这个消息里能够处理 // TODO: 在此处添加消息处理程序代码 long nStart, nEnd; this->GetSel(nStart, nEnd); int a= 1; 就能够获得当前点击位置原创 2009-09-09 19:39:00 · 615 阅读 · 0 评论 -
调试经验总结-VC下的错误对话框
调试经验总结-VC下的错误对话框 http://hi.baidu.com/yjsagacity/blog/item/bb76848f959198e9f11f3610.html原创 2009-09-10 21:46:00 · 419 阅读 · 0 评论 -
MFC类中获得其它类指针
当用VC++的Application Wizard生成除了CDialog Basiced以外的应用程序时,将自动产生视图类、文档类、主帧窗口类、应用程序类等等。一般来说,程序的核心数据及操作在文档类中实现。跟界面有关的数据及操作在视图类中实现。当需要在某个类中使用不属于该类的数据时,必须要取得该数据所属类的指针。从视图类获得文档类的指针是很容易的,用GetDocument即可,这在一般的MFC原创 2009-09-11 11:18:00 · 408 阅读 · 0 评论 -
如何使用来自 Rich Edit(CRichEditCtrl) 控件的内置打印功能
http://support.microsoft.com/kb/129860 如何使用来自 Rich Edit 控件的内置打印功能 打印 Rich Edit 控件包括标准的打印 API 的使用以及两个 Rich Edit 控件邮件,EM _ FORMATRANGE 和 EM_DISPLAYBAND。 可以由其自身或结合 EM_DISPLAYBAND 邮件使用 EM _ FORMAT原创 2009-09-14 14:25:00 · 1818 阅读 · 0 评论 -
获取 xml 节点文本,一下方式如果遇到很长的文本(如CRichEditCtrl 的 rtf 流)则无法返回正确值
获取 xml 节点文本,一下方式如果遇到很长的文本(如CRichEditCtrl 的 rtf 流)则无法返回正确值 MSXML2::IXMLDOMNodePtr m_spCurrentNode; for(INT i=0;ichildNodes->length;i++) { if(m_spCurrentNode->childNodes->item[i]-原创 2009-09-15 17:46:00 · 873 阅读 · 0 评论 -
动态创建Activex控件
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c5537#control_creation CString strControlProgid; strControlProgid="SuperDisplay Control"; //calendar control RECT rc;原创 2009-10-19 11:44:00 · 960 阅读 · 0 评论 -
Windows 进程管理知识
tcpsvcs.exe] 进程文件: tcpsvcs or tcpsvcs.exe 进程名称: TCP/IP Services 描 述: TCP/IP Services Application支持透过TCP/IP连接局域网和Internet。提供在 PXE 可远程启动客户计算机上远程安装 Windows 2000 Professional的能力。 [svchost.exe]转载 2009-11-01 22:35:00 · 911 阅读 · 1 评论 -
彻底了解c/c++指针
参见 http://hi.baidu.com/%C6%BF%D6%D0%B5%C4%C5%AE%CE%D7/blog/item/6fbc82cfc5f31b0b92457e3c.html 1.1. 一 :关于指针和堆的内存分配 1.1.1. 先来介绍一下指针:指针一种类型,理论上来说它包含其他变量的地址,因此 有的书上也叫它:地址变量。既然指针是一个类型,转载 2009-11-02 15:37:00 · 904 阅读 · 0 评论 -
C++内联函数(Inline)介绍
http://blog.chinaunix.net/u/21790/showart_355862.html 介绍内联函数之前,有必要介绍一下预处理宏。内联函数的功能和预处理宏的功 能相似。相信大家都用过预处理宏,我们会经常定义一些宏,如 #define TABLE_COMP(x) ((x)>0?(x):0) 就定义了一个宏。 为什么要使用宏呢?因为函数的调用必须要将程原创 2009-11-12 10:30:00 · 307 阅读 · 0 评论 -
请问WIN32编程中的HRESULT类型和LRESULT类型有什么不同呢
LRESULT :WIN32环境下Windows进程或者回调函数的返回值HRESULT :COM函数和方法的返回值LRESULT LRESULT是一个数据类型HRESULT 函数返回值。其实都是32位的无符号长整型值,只不过其分别代表的含义不同LRESULT LRESULT是一个数据类型, MSDN: 32-bit value returned fr原创 2009-11-15 00:23:00 · 4311 阅读 · 0 评论 -
获取 GetLastError 文本信息
DWORD derr = GetLastError(); derr = derr; LPVOID lpMsgBuf; FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(), 0, // Defau原创 2009-11-11 13:47:00 · 1048 阅读 · 0 评论 -
strcpy()、memcpy()、memmove()、memset()的实现
http://www.cnblogs.com/EricYang/archive/2009/09/03/1559827.html 其实转的是两篇文章,有些交叉点故合为一篇,分别转自:函数简介:memmove、memcpy和memccpy简介函数实现:strcpy()、memcpy()、memmove()、memset()的实现 memmove、memcpy和memccpy三个原创 2009-11-11 15:25:00 · 574 阅读 · 0 评论 -
利用底层键盘钩子拦载任意按键(回调版)
利用底层键盘钩子拦载任意按键(回调版)原创 2009-11-13 10:35:00 · 407 阅读 · 0 评论