
C/C++
twtzw
我
展开
-
SOCKET编程之FTP SERVER
// Server.cpp : 定义控制台应用程序的入口点。//需在项目设置 链接中添加ws2_32.lib#include "stdafx.h"#include winsock2.h>#include iostream>#include fstream>#include io.h> #include string> #include vector> #include ioma原创 2008-03-19 13:03:00 · 1697 阅读 · 1 评论 -
程序重启
char szFileName[MAX_PATH]; GetModuleFileName(theApp.m_hInstance, szFileName, MAX_PATH); ShellExecute(NULL, "Open", szFileName, NULL, NULL, SW_SHOWNORMAL);exit(0);原创 2008-10-15 09:52:00 · 291 阅读 · 0 评论 -
通过窗口句柄,获取IE控件里的内容(获取IHTMLDocument2和HTML)
char str[128];GetClassName(hwnd,str,sizeof(str));//获取类名 if(strcmp(str,"Internet Explorer_Server")==0){ CoInitialize( NULL ); HINSTANCE hInst = ::LoadLibrary( _T("OLEACC.DLL") );原创 2008-11-15 08:26:00 · 2602 阅读 · 0 评论 -
使用IHTMLDocument2操作IE命令
HRESULT hr;IOleCommandTarget *pCmd; hr=spDoc->QueryInterface(IID_IOleCommandTarget,(void **)&pCmd); if ( SUCCEEDED(hr) ){ VARIANT VA;//输入参数 VA.vt=VT_BSTR; VA.bstrVal=O原创 2008-11-15 09:06:00 · 605 阅读 · 0 评论 -
枚举IHTMLDocument2中所有IFRAME的内容
#include #include #include #include #include void EnumFrame( IHTMLDocument2 *pHTML ){ CComQIPtr spContainer( pHTML ); if( spContainer ) { CComPtr spEnume原创 2008-11-15 09:09:00 · 1132 阅读 · 0 评论 -
使用SetWindowsHookEx监控全局鼠标(双击右键)
HHOOK SetWindowsHookEx( int idHook, // 钩子的类型,即它处理的消息类型 HOOKPROC lpfn, // 钩子子程的地址指针。如果dwThreadId参数为0 // 或是一个由别的进程创建的线程的标识, // lpfn必须指向DLL中的钩子子程。 // 除此以外,lpfn可以指向当前进程的一段钩子子程代码。 // 钩子原创 2008-11-16 16:51:00 · 1232 阅读 · 0 评论 -
用RegisterHotKey为程序注册系统热键
RegisterHotKey 函数功能:该函数定义一个系统范围的热键。 函数原型:BOOL RegisterHotKey(HWND hWnd,intid,UINT fsModifiers,UINT vk); 参数: hWnd:接收热键产生WM_HOTKEY消息的窗口句柄。若该参数NULL,传递给调用线程的WM_HOTKEY消息必须在消息循环中中进行处理。 id:定原创 2008-11-15 16:37:00 · 582 阅读 · 0 评论 -
枚举所有窗口
BOOL CALLBACK EnumChildWindows(HWND hwnd, LPARAM lParam){ char str[1000]; GetWindowText(hwnd,str,sizeof(str));//获取窗口标题 CString temp(str); AfxMessageBox(temp); G原创 2008-11-15 07:49:00 · 2590 阅读 · 0 评论 -
判断字符串是否UTF8编码
UTF8是以8bits即1Bytes为编码的最基本单位,当然也可以有基于16bits和32bits的形式,分别称为UTF16和UTF32,但目前用得不多,而UTF8则被广泛应用在文件储存和网络传输中。 编码原理 先看这个模板: UCS-4 range (hex.) UTF-8 octet sequence (binary) 0000 0000-0000 007F 0xxx原创 2008-11-24 20:05:00 · 566 阅读 · 0 评论 -
将UTF8转成ANSISTRING
char * UTF8TOANSI(char *strUTF8){ WCHAR* strA; int i= MultiByteToWideChar ( CP_UTF8 , 0 ,(char*) strUTF8 ,-1 ,NULL,0);原创 2008-11-24 21:45:00 · 400 阅读 · 0 评论 -
CString 转LPCWSTR
int _convert; UINT _acp = GetACP(); LPCSTR _lpa; LPCWSTR pwcStr = A2CW((LPCSTR)sUsername);原创 2010-04-25 22:51:00 · 592 阅读 · 0 评论 -
MFC获取计算机名
char userName[MAX_PATH]; CString sUsername; DWORD size=MAX_PATH; ::GetComputerName(userName,&size); sUsername.Format("%s",userName);原创 2010-04-25 22:54:00 · 791 阅读 · 0 评论 -
MFC 禁用关闭按钮
CMenu* pSysMenu = GetSystemMenu(FALSE);if (pSysMenu != NULL){ pSysMenu->EnableMenuItem( SC_CLOSE, MF_BYCOMMAND|MF_GRAYED);}原创 2008-10-15 10:46:00 · 1741 阅读 · 0 评论 -
c++ 读写剪贴板
写:if(OpenClipboard()){ CString str; HANDLE hClip; char *pBuf; EmptyClipboard(); str="879789789"; hClip=GlobalAlloc(GMEM_MOVEABLE,str.GetLength()+1); pBuf=(char*)GlobalLock(hClip);//将句柄转换为指针!原创 2008-09-01 09:34:00 · 326 阅读 · 0 评论 -
获取磁盘的容量,剩余空间
BOOL WINAPI GetDiskFreeSpaceEx( __in_opt LPCTSTR lpDirectoryName, __out_opt PULARGE_INTEGER lpFreeBytesAvailable, __out_opt PULARGE_INTEGER lpTotalNumberOfBytes, __out_opt PULARGE_INT原创 2008-03-19 12:57:00 · 292 阅读 · 0 评论 -
SOCKET编程之FTP CLIENT
// Client.cpp : 定义控制台应用程序的入口点。//需在项目设置 链接中添加ws2_32.lib#include "stdafx.h"#include winsock2.h>#include iostream>#include fstream>#include io.h> #include string> #include vector> #include ioma原创 2008-03-19 13:04:00 · 1419 阅读 · 1 评论 -
C与C++的区别
1.C需要的头文件不同#include2.C的输入输出方式不同int a,b输入:printf("格式",变量)输出:scanf("%d%d",&a,&b)%d表示整型,%md m表示字段的宽度%f 表示型,%m.nf表示数据共占m列,其中有n位小数%c表示char型%u表示无符号数%ld表示长整型%o表示八进制%s表示字符串3.C的内存分配函数原创 2008-03-19 13:06:00 · 299 阅读 · 0 评论 -
int string之间的转换
string 转 int CString cutSizeStr="100";int cutSize=atoi(cutSizeStr);int 转 string char *cTemp=new char();int j=1;CString fileName=itoa(j,cTemp,10);//10表示10进制原创 2008-03-19 12:50:00 · 261 阅读 · 0 评论 -
浏览目录对话框
BROWSEINFO bi =...{0}; char pszDisplayName[MAX_PATH] ="原创 2008-03-19 12:54:00 · 253 阅读 · 0 评论 -
创建目录
BOOL WINAPI CreateDirectory( __in_opt LPCTSTR lpPathName, __in LPSECURITY_ATTRIBUTES lpSecurityAttributes);如:#include CreateDirectoryA("C://ZW",NULL);原创 2008-03-19 12:55:00 · 254 阅读 · 0 评论 -
Sequence KWIC
// Sequence KWIC.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#includefstream>#includestring>#include iostream>#includestdlib.h>#includevector>using namespace std;void swap(vectorstring> &A ,int i,int j原创 2008-04-24 20:36:00 · 399 阅读 · 0 评论 -
ADT KWIC
// ADT KWIC.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#includefstream>#includestring>#include iostream>#includestdlib.h>#includevector>using namespace std;class Input...{private: vectorvectorstrin原创 2008-04-24 20:34:00 · 483 阅读 · 0 评论 -
Pipe KWIC
// Pipe KWIC.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include #include #include #include #include using namespace std;vector out; HANDLE zwMutex原创 2008-04-24 20:35:00 · 592 阅读 · 2 评论 -
VS2005 把Edit Control(编辑框) 设为多行(Multiline)的方法.
把Auto HScroll 设为FALSE把MultiLine 设为TRUE原创 2008-07-28 11:10:00 · 715 阅读 · 0 评论 -
使用lib.exe生成.lib文件
今天想用一用sqlite,但是下载后发现只有DLL,没有LIB,只能自己生成了.在H:/Program Files/Microsoft Visual Studio 8/VC/bin里面有个lib.exe用拿生成lib,但默认是不能运行的,缺少几个文件把H:/Program Files/Microsoft Visual Studio 8/Common7/IDE 里面的mspdb80.dll,mspd原创 2008-07-29 20:32:00 · 7653 阅读 · 1 评论 -
MFC dll 与 exe调用 Recources的区别
今天搞了一个上午,在EXE中能运行的,但在生成DLL调用后出错在EXE中:FindResource(0,MAKEINTRESOURCE(IDR_SYS1),"SYS");DWORD dwWritten,dwSize=SizeofResource(NULL,hr);LoadResource(NULL,hr); 句柄都指向NULL,指向默认的当前EXE,所以在EXE 调用DLL原创 2008-08-01 11:16:00 · 533 阅读 · 0 评论 -
windows 普通用户 使用管理员权限运行程序
#include #include#pragma comment (lib,"userenv.lib") DWORD dwSize;HANDLE hToken;LPVOID lpvEnv;PROCESS_INFORMATION pi = {0};STARTUPINFOW si = {0};WCHAR s原创 2010-04-28 20:00:00 · 1697 阅读 · 0 评论