C++
chenglingsu6
这个作者很懒,什么都没留下…
展开
-
VC调试总结 zz http://www.cppblog.com/kevinlynx/archive/2008/04/24/47998.html 博客。
很早前就想写点总结将编程中遇到的各种错误刨根挖底地罗列出来。但是因为这些错误(VC中开调试器遇到的各种错误对话框)都是随机性的,真正想总结的时候又不想不起来有哪些错误。恰好最近运气比较背,各种错误都被我遇遍了,于是恰好有机会做个总结。 这里所说的VC下的错误对话框时指在VC中开调试器运行程序时,IDE弹出的对话框。 1.不是错误的错误:断言 .将断言视为错误其实有点可转载 2010-05-05 14:25:00 · 1099 阅读 · 0 评论 -
CoInitialize()与COM
Coinitialize CoInitialize是 Windows提供的API函数,用来告诉 Windows以单线程的方式创建com对象。应用程序调用com库函数(除CoGetMalloc和内存分配函数)之前必须初始化com库。 返回值S_OK : 该线程中COM库初始化成功S_FALSE 该线程中COM库已经被初始化 CoInitialize () 标明以单线程方式创建。 使用 CoInitialize 创建可以使对象直接与线程连接,得到最高的性能。 CoInitialize并不装载COM 库,转载 2010-11-10 09:55:00 · 16284 阅读 · 1 评论 -
静态函数里不能访问成员变量
<br />因为静态是针对类的,而成员变量为对象所有。<br /> <br />如果要访问的话:<br /> <br />一:可以把要用的参数通过void * argslist 传递进线程函数<br />二:设置一个静态变量,静态变量可以指向你要调用对象的,然后在线程函数中直接调用<br />三:可以把类成员变量设置成静态的,这样就可以在线程函数中直接调用<br />看看你的代码int val=a是不可能调用的因为没有this指针,你可以采用我的第一个方案,传递进一个this指针,表明a是属于哪个对象的<b原创 2010-09-30 14:57:00 · 2163 阅读 · 0 评论 -
几个宏函数
<br /><br />#define Max(a,b) (((a) > (b)) ? (a) : (b))<br />#define Min(a,b) (((a) < (b)) ? (a) : (b)) <br />#define SAFE_DELETE_ARRAY(p) { if(p) { delete[] (p); (p)=NULL; } }<br />#defineSAFE_DELETE(p){ if(p) { delete (p); (p)=NULL; } }原创 2010-09-25 10:30:00 · 443 阅读 · 0 评论 -
C++中获得在App或者Doc中获得当前View的指针
<br />MDI程序中<br /> <br /><br />CMainFrame* pMainFrame = (CMainFrame*)GetMainWnd(); <br />CBitmapZoomView* pActiveView = (CBitmapZoomView*)pMainFrame->MDIGetActive();<br />原创 2010-09-21 08:23:00 · 586 阅读 · 0 评论 -
弹出选择文件夹的窗口(用于文件存储)
<br />CHAR* cFolderPathT = new CHAR[256];<br /> memset(cFolderPathT, 0, 256);<br /> <br /> BROWSEINFO bRows; <br /> LPITEMIDLIST pIDL = NULL; <br /> bRows.hwndOwner = NULL; <br /> bRows.pidlRoot = NULL; <br /> bRows.pszDisplayName = cFolderPathT;<br />原创 2010-09-16 13:31:00 · 548 阅读 · 0 评论 -
VC中如何用OCX
通过添加类的形式完成,只不过选择MFC Class From ActiveX ControlADD CLASS FROM TYPE LIBRARY选择*.ocx原创 2010-09-15 13:44:00 · 505 阅读 · 0 评论 -
删除多余进程(同类进程只留一个)
<br />VOID CMeDViewerDlg::KillSpareProcess(char* strProcessName)<br />{<br /> DWORD dwThisProcessID = GetCurrentProcessId(); //获取当前进程ID<br /> DWORD dwProcessID = 0;<br /> HANDLE hProcessHandle = NULL;<br /> DWORD dwProcessIDes[1024], cbNeeded, cbMNeeded;<b原创 2010-09-14 11:21:00 · 961 阅读 · 0 评论 -
获取当前进程ID
GetCurrentProcessId();或者#include#include#include#includeint main(){/*获得当前进程的进程ID和其父进程ID*/printf("The PID of this process is %d/n",getpid()); /*getpid函数作用是获得当前进程的PID*/printf("The PPID of this process is %d/n",getppid()); /*getppid函数作用是获得当前进程的父进程PPID*/}转载 2010-09-14 11:17:00 · 25313 阅读 · 0 评论 -
各种字符串之间的转换
HomeLibraryLearnDownloadsSupportCommunitySign in |中国(简体中文) |PreferencesMSDN LibraryDevelopment Tools and LanguagesVisual Studio 2010Visual StudioVisual Studio LanguagesVisual C++Visual C++ Programming MethodologiesCharacter Sets in C++How to: Convert Betwe转载 2010-09-13 22:38:00 · 964 阅读 · 0 评论 -
获得进程ID,关闭进程。
//// FindProcess// 这个函数唯一的参数是你指定的进程名,如:你的目标进程// 是 "Notepad.exe",返回值是该进程的ID,失败返回0//DWORD FindProcess(char *strProcessName){ DWORD aProcesses[1024], cbNeeded, cbMNeeded; HMODULE hMods[1024]; HANDLE hProcess; char szProcessName[MAX_PATH]; if (转载 2010-09-13 21:58:00 · 3764 阅读 · 0 评论 -
如何使用CArray
MFC的数组类支持的数组类似于常规数组,可以存放任何数据类型。常规数组在使用前必须将其定义成能够容纳所有可能需要的元素,即先确定大小,而MFC数组类创建的对象可以根据需要动态地增大或减小,数组的起始下标是0,而上限可以是固定的,也可以随着元素的增加而增加,数组在内存中的地址仍然是连续分配的。 MFC定义了数组模板类CArray,并针对各种常用变量类型定义了CByteArray,CArray,C转载 2010-05-16 15:59:00 · 2186 阅读 · 0 评论 -
毕业设计中用到的一些
1、如何设置全局变量/函数(1)定义一个Global.h,内包含 #pragma once#include "OraEnv.h"extern OraEnv Glob_OraEnv; //全局变量#define SQL_MAXLEN 1024 //全局宏定义extern double GetTime(); //全局函数 (2)定义Gl原创 2010-05-05 15:44:00 · 420 阅读 · 0 评论 -
毕业设计中碰到的一些(简单常识类)
1、UpdateData(TRUE) 和 UpdateData(FALSE)的区别。 UpdateData(TRUE)控健变化通知程序更新内容。 UpdateData(FALSE)内容变化更新控健。 2、数组是在栈内分配的,通常VC默认的栈是1M,如果有数组过大,超过了这个数,就会导致编译出错,所以应该用动态的new。 3、在VC Debug版本里,栈中分配的值都会原创 2010-05-05 15:28:00 · 491 阅读 · 0 评论 -
AfxOleInit()和::CoInitialize(NULL)区别(转载)
<br /><br />OLE是建立在COM之上的技术,层次比COM要高。AfxOleInit()调用的是OleInitialize(),而OleInitialize()除了调用CoInitializeEx()来初始化COM库外,还进行一些其它的操作,这些操作对OLE应用来说是必须的,这些OLE应用包括: <br /> (1)Clipboard; <br /> (2)Drag and drop; <br /> (3)Object linking and embeddin转载 2010-11-10 10:04:00 · 1241 阅读 · 1 评论