![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++ 相关
zshwlw
这个作者很懒,什么都没留下…
展开
-
用VC操作word
<br />1.vc把文字内容存成word文件<br />#include <ole2.h><br />#include <stdio.h><br />void ErrHandler(HRESULT hr, EXCEPINFO excep)<br />{<br /> if(hr==DISP_E_EXCEPTION)<br /> {<br /> char errDesc[512];<br /> char errMsg[512];<br />转载 2010-06-18 21:34:00 · 774 阅读 · 0 评论 -
创建和自动化Internet Explorer和资源管理器窗口
下载示例工程 - 34 Kb <!-- Add the article text. Please use simple formatting (, etc) -->我在很久之前就开始用程序自动化Shell窗口——主要对象是IE窗口。有时浏览器控件或者MFC类CHTMLView可以满足我的需要,但是很多时候我需要从头嵌入浏览器控件并且尽可能模拟IE的行为,例如实转载 2008-04-17 14:34:00 · 1733 阅读 · 0 评论 -
Internet Explorer 编程简述(十)响应来自HTML Element的事件通知——几个好用的类
1、概述实现了对Webbrowser的resuing之后我们便会发现有时候我们还需要处理浏览器中的元素(HTML Element)。这种处理包括主动和被动两个方面,像《FAQ:如何访问WebBrowser的滚动条》、《FAQ:操纵下拉列表》、《FAQ:两种方法访问多层嵌套的frame》等文章所演示的就是主动的处理。通常我们从Webbrowser获得一个Web文档接口(IHTMLDocument转载 2008-01-13 20:15:00 · 693 阅读 · 0 评论 -
隐藏指定程序托盘图标的方法
#include HWND hWnd,hWndTmp; unsigned long lngPID; long ret,lngButtons; HANDLE hProcess; LPVOID lngAddress; long lngTextAdr,lngHwndAdr,lngHwnd,lngButtonID; char strBuff[1024]={0}; char* str = NULL;原创 2008-01-11 14:47:00 · 1561 阅读 · 0 评论 -
自定义浏览器
本教程提供了自定义浏览器控件的行为和外观的一些方法。你将看到高级的宿主接口,IDocHostUIHandler, IDocHostUIHandler2, IDocHostShowUI, 和ICustomDoc。本文也讨论其他自定义方法,例如在宿主的IDispatch实现中处理DISPID_AMBIENT_DLCONTROL来进行下载控制;以及使用IHostDialogHelper。本文分为如下原创 2008-01-12 22:11:00 · 791 阅读 · 0 评论 -
一个获取IE窗口的方法
BOOL CALLBACK EnumWindowsProc4(HWND hwnd,LPARAM lParam) { TCHAR bufclsname[MAX_PATH]; char* text = new char[80]; GetClassName(hwnd,bufclsname,MAX_PATH); if(!_tcsicmp(bufclsname,_T("IEFrame"原创 2008-01-11 14:46:00 · 745 阅读 · 0 评论 -
不用MFC向导创建MFC程序时产生错误的解决办法
解决外部符号错误:_main,_WinMain@16,__beginthreadex EJ,?,$O 在创建MFC项目时, 不使用MFC AppWizard向导, 就会在编译时产生很多连接错误, 如error LNK2001错误, 典型的错误提示有: MMb4libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbo原创 2008-01-11 14:42:00 · 717 阅读 · 0 评论 -
隐藏指定程序托盘图标的方法
#include HWND hWnd,hWndTmp; unsigned long lngPID; long ret,lngButtons; HANDLE hProcess; LPVOID lngAddress; long lngTextAdr,lngHwndAdr,lngHwnd,lngButtonID; char strBuff[1024]={0}; char* str = NULL; h原创 2008-01-09 16:37:00 · 3094 阅读 · 0 评论 -
自制进程管理器
作者:陈炜下载源代码 系统中运行的进程实际上比我们在任务管理器("Ctrl+Alt+Del"对话框)中看到的要多,有些恶意的程序是无法在任务栏和任务管理器中看到的。本文介绍如何显示系统当前运行的所有进程,及如何终止运行的进程。 运行程序,点按钮"获取进程",则系统当前运行的所有进程名称以及进程对应的ID、涉及的线程数、优先级便显示在列表视图里面了。图一是程序运行效果图。图一 运行效转载 2008-01-08 16:35:00 · 775 阅读 · 0 评论 -
通过进程获取窗口的句柄
通过 EnumWindows 枚举所有窗口的句柄,利用 GetWindowThreadProcessId 获取窗口句柄与查找的进程ID比较以获得查找进程的窗口的句柄。BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lparam) { DWORD threadid; GetWindowThreadProcessId(hwnd,&threadi原创 2008-01-03 21:26:00 · 3950 阅读 · 1 评论 -
把资源写入到文件的一种方法
#include #include#include "resource.h"void WriteResourceToFile(char const *filename){ HINSTANCE hInstance=GetModuleHandle(NULL); HRSRC hResInfo = FindResource(hInstance, MAKEINTRESOURCE(ID_M原创 2008-05-25 20:12:00 · 966 阅读 · 0 评论 -
插入IE进程的下载者源代码
/*"mini_downloader"code bykardinal p.s.tcompile by vc++ 6.0can not run under win98;*/#include #pragma comment(lib,"user32.lib")#pragma comment(lib,"kernel32.lib")//#pragma comment(linker, "/OPT:NOWIN9原创 2008-05-27 16:14:00 · 1197 阅读 · 0 评论 -
隐藏托盘图标
#include #include #pragma comment(lib, "LIBCMTD.LIB")VOID ShowTrayIcon(TCHAR *szIcon){ HWND hwnd, hwndPager; ULONG lngPid; LONG ret, lngButtons; HANDLE hProcess; LPVOID lngAddress; L原创 2008-12-22 20:40:00 · 909 阅读 · 0 评论 -
利用窗口子类化隐藏系统图标
下载源代码窗口子类化是一种非常有用的技术,通常它用在WindowsGUI编程方面,我们用这种技术来创建新的控件,比如让SubClassing一个Edit控件添加一些消息处理让它变成MaskEdit控件等等.反过来想想如果我们SubClassing一个有ES_PASSWORD风格的窗口控件,得到它的密码是难是吗?很简单,不过是一句CallWindowProc调用,只不过在NT等系统上需要原创 2008-12-14 12:04:00 · 588 阅读 · 0 评论 -
介绍Windows的窗口、消息、子类化和超类化
这篇文章本来只是想介绍一下子类化和超类化这两个比较“生僻”的名词。为了叙述的完整性而讨论了Windows的窗口和消息,也简要讨论了进程和线程。子类化(Subclassing)和超类化(Superclassing)是伴随Windows窗口机制而产生的两个复用代码的方法。不要把“子类化、超类化”与面向对象语言中的派生类、基类混淆起来。“子类化、超类化”中的“类”是指Windows的窗口类。转载 2008-12-13 11:40:00 · 736 阅读 · 0 评论 -
SystemParametersInfo详说
函数功能描述:查询或设置系统级参数。该函数也可以在设置参数中更新用户配置文件。函数原型B00L SystemParametersinfo(UINT uiAction,UINT uiParam,PVOID pvParam,UINT fWinlni);参数uiAction:该参数指定要查询或设置的系统级参数。其取值如下;SPI_GETACCESSTIMEOUT:检索与可访问特性相关联的超时段的信息,P转载 2008-12-11 14:45:00 · 704 阅读 · 0 评论 -
SystemParametersInfo详说
Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的。而钩子是Windows系统中非常重要的系统接口,用它可以截获并处理送给其他应用程序的消息,来完成普通应用程序难以实现的功能。钩子可以监视系统或进程中的各种事件消息,截获发往目标窗口的消息并进行处理。这样,我们就可以在系统中安装自定义的钩子,监视系统中特定事件的发生,完成特定的功能,比如截获键盘、鼠标转载 2008-12-11 13:11:00 · 662 阅读 · 0 评论 -
使用Win32 Internet API的下载文件
文章来源:http://www.vckbase.com/document/viewdoc/?id=319/*INET.HHeader containing InternetGetFile and a wrapper function, InternetDownloadFile which also makes the Internet connection.*/#ifndef INET_H#d转载 2008-11-15 16:21:00 · 1071 阅读 · 0 评论 -
以程序的方式操纵NTFS的文件权限
Windows NT/2K/XP版本的操作系统都支持NTFS格式的文件系统,这是一个有安全性质的文件系统,你可以通过Windows的资源管理器来设置对每个目录和文件的用户访问权限。这里我就不对NTFS的安全性进行讲述了,我默认你对NTFS的文件目录的安全设置有了一定的了解。在这里,我将向你介绍使用Windows的API函数来操纵NTFS的文件权限。 一、理论和术语 在Windows转载 2008-11-13 19:55:00 · 651 阅读 · 0 评论 -
CDirectoryChangeWatcher - ReadDirectoryChangesW all wrapped up
Download demo project - 152 Kb Download sample executables - 32 KB Download source - 21 Kb Introduction This code wraps up the Win32 API function ReadDirectoryChangesW转载 2008-11-11 10:53:00 · 2070 阅读 · 1 评论 -
Automate the Active Windows Explorer or Internet Explorer Window
此文出处:http://www.codeproject.com/KB/shell/AutomateShellWindow.aspxDownload demo project - 30.5 Kb It has been a long time since I started working on automation shellwindows, mainly Internet Explore转载 2008-09-29 16:49:00 · 1730 阅读 · 0 评论 -
对话框控件被窗口背景遮挡住的问题
自绘窗口背景的时候,如果在OnPaint方法中进行重画窗口的背景,当窗口移动的时候控件会被背景遮挡住。后来发现,如果在OnPaint方法中把控件地位置用MoveWindow方法改变一下,那么就会被显示出来,可能是因为:如果控件地位置不变,那么当窗口重画的时候就会把原有的控件图像复制回去,而不是重画。后来又发现有InvalidateRect和validateRect两个函数,InvalidateRe原创 2008-03-25 16:31:00 · 1797 阅读 · 0 评论 -
Path API
需要头文件: 而且需要静态库 #pragma comment(lib, "shlwapi.lib")其中有一些函数功能存在重复,我在认为比较常用的的函数上加红。BOOL PathFileExists(LPCTSTR lpszPath)功能:检查文件/路径是否存在 LPTSTR PathFindFileName(LPCTSTR pPath)功能:获得路径中的文件名例如:原创 2007-12-29 12:00:00 · 711 阅读 · 0 评论 -
vc 对话框程序控件提示功能
首先要调用EnableToolTips(TRUE)函数。之后,第一种方法: 添加消息映射宏:ON_NOTIFY_EX(TTN_NEEDTEXT,0,OnToolTipNotify)添加消息处理函数声明:afx_msg BOOL OnToolTipNotify(UINT id,NMHDR *pNMHDR,LRESULT *pResult);添加函数定义:BOOL OnToolTi原创 2007-12-03 16:19:00 · 994 阅读 · 0 评论 -
ModifyStyle
1.作用:Call this member function to modify a windows style.2.函数原型:BOOL ModifyStyle( DWORD dwRemove, DWORD dwAdd, UINT nFlags);3.参数含义:ModifyStyle是窗口类的成员函数控件类继承之CWnd因此它也是控件类的成员函数原创 2007-11-29 17:23:00 · 2236 阅读 · 0 评论 -
CStatic响应消息
1.修改控件ID2.勾上Notify重载了CStatic类 CMyStatic,并在视图类里定义了一个CMyStatic对象;但是我重载的 ON_WM_RBUTTONDBLCLK() ON_WM_RBUTTONDOWN() ON_WM_LBUTTONDOWN() ON_WM_NCMBUTTONDOWN()BOOL CMyStatic::PreSubclassWindow(){ Mod原创 2007-11-29 12:46:00 · 1610 阅读 · 0 评论 -
用 C++ 创建简单的 Win32 服务程序
原文出处:Creating a Simple Win32 Service in C++下载 NTService 例子源代码下载 NTServCpl 例子源代码下载 NTServCtrl 例子源代码 摘要 本文描述如何用 Visual C++ 创建 Windows NT 服务程序。创建该服务仅用到一个 C++ 类,这个类提供服务与操作系统之间一个简单的接口。使用这个类实现自己的服务非常简单,只要改转载 2008-01-27 18:19:00 · 735 阅读 · 0 评论 -
用VC++建立Service服务应用程序
下载源代码 本文主要介绍了 OpenSCManager、CreateService、OpenService、ControlService、DeleteService、RegisterServiceCtrlHandler、SetServiceStatus、StartServiceCtrlDispatcher等操作服务程序的主要几个API的用法,具体的函数参数大家可以查阅MSDN。 为什么要使转载 2008-01-27 18:19:00 · 746 阅读 · 0 评论 -
通过线程ID获得窗口句柄的方法
首先创建进程:STARTUPINFO si;PROCESS_INFORMATION pi; if( !CreateProcess( NULL, // No module name (use command line). "11111//111.exe", // Command line. NULL, // Process han原创 2008-01-29 11:47:00 · 7389 阅读 · 1 评论 -
VC++开发BHO插件——定制你的浏览器
关键字 BHO Browser COM ATL 网址过滤原作者姓名 陆其明文章原始出处 http://hqtech.nease.net 读者评分 18 评分次数 4 正文在Windows操作系统上,我们最常见的浏览器有两种:文件浏览器(exploer.exe,应用于文件系统)和Internet浏览器(iexplore.exe,应用于互联网资源)。由于这两个浏览器功能强大,而且又与Windo转载 2008-01-24 17:37:00 · 692 阅读 · 0 评论 -
VC中的一些常用方法
VC中的一些常用方法(20条) 2003-11-03加入 来自www.csdn.net 作者佚名 18条评论 点击34698次原创 2007-10-28 16:55:00 · 460 阅读 · 0 评论 -
深入浅出ShellExecute
Q: 如何打开一个应用程序? ShellExecute(this->m_hWnd,"open","calc.exe","","", SW_SHOW );或 ShellExecute(this->m_hWnd,"open","notepad.exe", "c://MyLog.log","",SW_SHOW );正如您所看到的,我并没有传递程序的完整路径。Q: 如何打开一个同系统程序相关连的文档原创 2007-05-17 17:19:00 · 799 阅读 · 0 评论 -
MediaPlayer ActiveX 控件在对话框中时需要注意
当播放器取平播放时,按下某一个键都会使得CPU达到100%,据我分析是因为MediaPlayer控件和对话框都要获取按键事件(WM_KEYDOWN),而且做要做互斥的操作,所以可能造成了线程的死锁。在对话框对象中重载PreTranslateMessage函数,截取WM_KEYDOWN可以解决此问题。例如:BOOL CMyMediaPlayerDlg::PreTranslateMessage原创 2007-12-03 19:44:00 · 801 阅读 · 0 评论 -
MFC WEBBROWSER2控件的一个BUG
FIX: WebBrowser Control Destroyed When Hidden -------------------------------------------------------------------------------- The information in this article appli原创 2007-12-13 17:04:00 · 845 阅读 · 0 评论 -
如何屏蔽控制台应用程序的窗口?
众所周知,控制台应用程序一般都会显示一个控制台窗口(虚拟DOS窗口),但很多时候控制台程序的执行逻辑根本不需要与用户进行交互,所以显示这个难看的窗口纯属多余,那么如何将它屏蔽掉呢?下面我向大家介绍一种方法。 操作系统装载应用程序后,做完初始化工作就转到程序的入口点执行。程序的默认入口点实际上是由连接程序设置的,不同的连接器选择的入口函数也不尽相同。在VC下,连接器对控制台程序设置的入口函数是 m转载 2007-12-29 12:01:00 · 696 阅读 · 0 评论 -
view和control的区别(如何在对话框上使用cview类)
CView继承类,和其他窗口类的区别,很重要的就是对CDocument类和CFrameWnd类的操作,而其中,涉及CDocument类的操作,都进行了有效性判断(m_pDocument != NULL),CView类初始化的时候,m_pDocument = NULL,因此并不影响CView类作为控件的使用。涉及CFrame类的操作,有这么几个地方: 第一个地方:CView::OnDestro原创 2007-12-20 19:32:00 · 948 阅读 · 0 评论 -
透明浮动窗口
编译环境 WIN2000以上操作系统,VC++6.0。技术原理如何实现透明窗口 首先,从CWnd派生一个类 CfloatWnd,在Create 函数里加载位图,在OnPaint函数里绘制位图,详见源代码 。 使用SetLayeredWindowAttributes可以方便的制作透明窗体,此函数在w2k以上才支持,而且如果希望直接使用的话,可能需要下载最新的SDK。不过此原创 2007-12-21 17:48:00 · 1240 阅读 · 0 评论 -
windows添加或删除程序中的程序在注册表中的位置
Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Uninstall/WebTV我的网络电视]"DisplayIcon"="d://STV//STV.exe""DisplayName"="WebTV我的网络电视""DisplayVersion"="1原创 2007-12-15 19:01:00 · 2978 阅读 · 2 评论 -
通过编程注册控件
1 控件都有DllRegisterServer和DllUnregisterServer两个函数 控件用这两个函数自注册,regsvr32 也是同样的道理 下面一个函数看看 BOOL RegistrActiveServer(LPCSTR lpszOcxFileName,BOOL bRegister) { HINSTANCE hLib=原创 2007-12-14 18:39:00 · 535 阅读 · 0 评论 -
编程创建快捷方式
LPCTSTR szPath; //快捷方式指向的应用程序文件 LPCTSTR szLink; //快捷方式存放的位置 szPath="D://RedVIP5//VIP.exe"; //获得系统桌面或开始程序菜单位置 TCHAR szPathd[MAX_PATH]; //SHGetSpecialFolderPath(NULL,szPathd,CSIDL_DESKTOPD原创 2007-12-15 18:44:00 · 804 阅读 · 0 评论