c++
文章平均质量分 52
普通网友
这个作者很懒,什么都没留下…
展开
-
MFC系统托盘的实现
怎么实现呢?这里需要运用到的Windows API函数:BOOL Shell_NotifyIcon( DWORD dwMessage, PNOTIFYICONDATA lpdata); 函数了里面的参数对于实现不同的效果尤其重要,包括托盘图标、托盘菜单等等。那么我们来了解一下两个参数吧:dwMessage可以取以下值:NIM_ADD原创 2016-11-18 21:32:32 · 517 阅读 · 0 评论 -
mfc 模拟鼠标点击
方法1:用SetCursorPos 先移动鼠标到指定位置,然后用mouse_event去模拟点击 此法不需要窗口句柄方法2:sendmessage,需要窗口句柄原创 2015-11-27 20:07:54 · 1013 阅读 · 0 评论 -
mfc 操作ini
在VC++中读写INI文件 在我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下: 一.将信息写入.INI文件中. 1.所用的WINAPI函数原型为: BOOL WritePrivateProfileString(LPCTSTR lpAppName,原创 2015-12-14 14:40:18 · 419 阅读 · 0 评论 -
通过其他程序的Internet Explorer_Server句柄打开网页
CoInitialize(NULL); IWebBrowser2* pWebBrowser2=NULL; HRESULT hr; // Explicitly load MSAA so we know if it's installed HINSTANCE hInst = ::LoadLibrary( _T("OLEACC.DLL") ); if ( hInst )原创 2015-11-23 21:23:04 · 1304 阅读 · 0 评论 -
mfc 模仿键盘按键向银行密码控件输入密码
ptempwnd->ShowWindow(SW_NORMAL); //ptempwnd密码控件句柄ptempwnd->SetForegroundWindow(); keybd_event(65,0,0,0); //发送按键keybd_event(65,0,KEYEVENTF_KEYUP,0);原创 2015-12-09 22:12:44 · 2524 阅读 · 0 评论 -
mfc 直接操作ie浏览器自动填写表单实例
在我们编写的程序中,如果想要实现对浏览器打开的网页进行监视、模拟操纵、动态提取用户输入、动态修改......等功能,那么请你抽出宝贵的时间,继续往下阅读。本文介绍的知识和示例程序都是围绕如何遍历 HTML 中的表单(form)并枚举出表单域的属性为目标的,对于网页中的其它元素,比如图象、连接、脚本等等,应用同样的方法都可以轻松实现。二、网页的文档层次结构IE 浏览器,采用 DOM(原创 2015-12-08 22:47:13 · 6061 阅读 · 0 评论 -
窗口句柄相关小知识
::GetClassName(hwnd,classname,100);根据句柄获得类名 ::EnumChildWindows(hwnd,EnumChildProc,0);枚举hwnd下的所有子窗口EnumChildProc,返回false终止,返回true继续直到结束原创 2015-11-22 22:40:02 · 323 阅读 · 0 评论 -
CWnd* hWnd互转
CWnd* pWnd=CWnd::FromHandle(hWnd); hwnd = pWnd->m_hWnd; //得到它的HWND原创 2015-11-04 15:16:24 · 628 阅读 · 0 评论 -
动态链接库(DLL)编程深入浅出
1.概论 先来阐述一下DLL(Dynamic Linkable Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。 静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该D转载 2015-07-30 22:46:47 · 2550 阅读 · 0 评论 -
webbrowther 获得iframe数据
HRESULT hr;//用于存放函数调用结果IHTMLDocument2 * pfmDoc2;IHTMLFramesCollection2 *pCol=NULL;hr=pDoc2->get_frames(&pCol); if ( FAILED(hr))return false;VARIANT vFrame,vIndex;CString main="main转载 2015-04-29 00:21:49 · 623 阅读 · 0 评论 -
mfc根据句柄获得外部程序标题类
char buf[1024];GetWindowText(hwnd,buf,sizeof(buf));//获取 //::GetClassName(hwnd,classname,100);SetWindowText(handle2,buf);//送给Edit2设置原创 2015-11-27 22:54:44 · 969 阅读 · 0 评论 -
网银密码控件自动输入密码
WinIO程序库允许在32位的Windows应用程序中直接对I/O端口和物理内存进行存取操作通过使用一种内核模式的设备驱动器和其它几种底层编程技巧,它绕过了Windows系统的保护机制。使用此第三方插件即可实现需要的功能原创 2015-11-28 16:22:18 · 5334 阅读 · 1 评论 -
vc遍历网页表单并自动填写提交
1.独立代码//-----------开始---------------------//#include #include #include #include #include void EnumIE(void);//处理网页void EnumFrame(IHTMLDocument2 * pIHTMLDocument2);//处理框架void EnumFor转载 2015-12-08 22:16:41 · 1257 阅读 · 0 评论 -
mfc vc++自动精确判断网络连接变化
微软在WINDOWS VISTA之后提供了一个叫NLA(Network List Manager API)的接口,用于获取网络状态变化通知的一个接口。以COM技术实现。主要导出的COM接口如下:IEnumNetworkConnectionsIEnumNetworksINetworkINetworkConnectionINetworkConnectionEventsINetworkEv原创 2016-11-18 17:41:18 · 5878 阅读 · 1 评论 -
vs2008有关子对话框重新以及窗口时间响应在哪里找
1.我的VS2008对话框程序怎么没有PreTranslateMessage消息用类向导生成的基于对话框的MFC程序,在属性的message里看了。全是WM开头的。都找了。没找着。。。汗。。。怎么回事?呵呵,不是在类的message里面,而是在类的overrides里面哦…就在classview里面,不是有两上类了吗?点那个对话框类,在“属性”窗口里,点“重写”选项卡,里面列了所有原创 2016-10-31 22:38:54 · 695 阅读 · 0 评论 -
使用控件时提示"未声明标识符"的解决方法
enum { IDD = IDD_DIALOG1 };error C2065: “IDC_RATIOHIGH”: 未声明的标识符(其他控件是相同错误,在此省略)。#include "resource.h"忘记添加原创 2016-10-31 22:04:20 · 1598 阅读 · 0 评论 -
mfc中web插件与c++之间相互调用方案
一、javascript调用c++,方法有两种方案1:1.html编写TESTfunction TestFunc(){ alert("TestFunc");} 2.C++的CHtmlView类重写OnBeforeNavigate2函数void CAddGoogleMap_CHtmlView::On原创 2016-10-31 21:28:50 · 778 阅读 · 0 评论 -
mfc获取子窗口句柄总结
1.FindWindow,根据顶级窗口的类名或者标题名获得顶级窗口句柄2.::EnumChildWindows(m_mhd,EnumChildProc,0);根据顶级窗口筛选出可以可以分辨出离目标子窗口最近的子窗口,EnumChildProc这里可以获得每个子窗口的句柄,可以根据句柄获得子窗口所有消息,是回调函数BOOL CALLBACK EnumChildProc( HWND原创 2016-10-22 11:13:47 · 6771 阅读 · 0 评论 -
mfc点击屏幕
CRect rc; CWnd* pParent = CWnd::FromHandle(hMain); pParent->GetWindowRect(&rc); //设置按钮位置并点击 但程序并无反应 keybd_event发送到编辑框也无反应 SetCursorPos(rc.left + 430, rc.top + 135);// 5原创 2016-05-12 18:43:54 · 492 阅读 · 0 评论 -
c 实现aes加解密
#include#include#include#include#include// The number of columns comprising a state in AES. This is a constant in AES. Value=4#define Nb 4// The number of rounds in AES Cipher. It is原创 2016-03-28 00:01:22 · 1155 阅读 · 0 评论 -
AutoIt3 是Windows自动安装脚本语言
Au3脚本是AutoIt3 Windows自动安装脚本语言。AutoIt 是一种自动控制工具。它可以被用来自动完成任何基于 Windows 或 DOS 的简单任务。它最初被设计用来自动完成安装那些其它方法不能自动安装的软件Au3脚本,也就是AutoIt3 Windows自动安装脚本语言。AutoIt 是一种自动控制工具。这在PC首次展示时非常有用,那时成百上千的机器需要被自原创 2016-04-02 17:55:59 · 2956 阅读 · 0 评论 -
mfc完整的自动填表实例
void CYahooDlg::OnBnClickedButton1(){ BSTR bsStatus; bReady=0; CString mPass("*****"); //<-------- Your Password here CString mUser("*****");//<-------- Your user ID here BSTR b原创 2015-12-08 22:45:24 · 1918 阅读 · 1 评论 -
MFC C++代码与WebBrowser HTML的互动
testWebBrowser.h[cpp] view plaincopy在CODE上查看代码片派生到我的代码片// testWebBrowserDlg.h : 头文件 // #pragma once #include "explorer1.h" #import "C:\windows\system32\mshtml.tlb" // l转载 2015-04-27 20:14:06 · 1124 阅读 · 0 评论 -
Wininet、WebBrowser编程中如何管理Cookie
用VC++访问网页,一般都是用微软提供的Wininet、WinHTTP(基于HTTP协议)或WebBrowser(加载整个网页)。当然还有libcurl之类的第三方类库,因为暂时没接触过,就不说了。在使用上述三种方式访问网页的编程过程中,默认情况下是由它来管理Cookie,但有时候程序员想手工干预,比如清除Cookie、修改Cookie、添加Cookie。在网上搜索了一下,大概有这么三种方转载 2015-04-27 19:57:23 · 617 阅读 · 0 评论 -
如何解决WebBrowser.DocumentCompleted事件的多次调用
关于DocumentCompleted事件,MSDN给出的解释是在文档加载完毕后执行,但是在我的程序中DocumentCompleted却被多次调用,查了一下资料,大概出现了以下几种情况。1、WebBrowser载入一个页面后DocumentCompleted事件会执行两次,但这两次的ReadyState状态不一样,分别是Intercative和Complete。而MSDN对这两种状态转载 2015-04-26 22:22:20 · 673 阅读 · 0 评论 -
基于Internet Explorer内核的网页信息抓取程序
程序开发背景 本程序来源于我们项目组最近正在开发的一个开源项目——网页分块工具。其目的是作为一个底层的信息抽取模块,为后期分析提供尽可能详尽的分块线索,包括尽可能完整的HTML源代码和网页元素的位置、颜色、字体、背景色等信息。程序还 要具有较好的适应性,能够支持多种网页,而事实上很多网页都是不标准的。从通用性考虑,程序应该能够支持多种应用,而不仅限于网页分块。 预期目标分原创 2015-04-26 22:18:54 · 682 阅读 · 0 评论 -
VC:WebBrowser控件始终在本窗口打开新页面
m_pBrowserApp->put_RegisterAsBrowser(VARIANT_TRUE);void CMyHtmlView::OnNewWindow2(LPDISPATCH* ppDisp, BOOL* Cancel){CComPtr pHTMLDocument2;m_pBrowserApp->get_Do转载 2015-04-26 18:53:46 · 2513 阅读 · 0 评论 -
WebBrowser.DocumentCompleted事件的多次调用
关于DocumentCompleted事件,MSDN给出的解释是在文档加载完毕后执行,但是在我的程序中DocumentCompleted却被多次调用,查了一下资料,大概出现了以下几种情况。1、WebBrowser载入一个页面后DocumentCompleted事件会执行两次,但这两次的ReadyState状态不一样,分别是Intercative和Complete。而MSDN对这两种状态转载 2015-04-26 20:17:25 · 356 阅读 · 0 评论 -
真正完美解决vs2008 添加启动画面(基于对话框)
1. 手动添加CSplashWnd类SplashWnd.h// CG: This file was added by the Splash Screen component.#ifndef _SPLASH_SCRN_#define _SPLASH_SCRN_// Splash.h : header file//////////////////////////////原创 2015-01-17 21:38:50 · 555 阅读 · 0 评论 -
CButtonST使用技巧(三)
CButtonST使用技巧(二)本篇将向大家介绍两个CButtonST的派生类。一、CWinXPButtonST类CWinXPButtonST类 是一个CButtonST的派生类。它的特点是使用了WindowsXP中的圆角、黑色边框的风格。它包括WinXPButtonST.h和WinXPButtonST.cpp两个文件,而由于它是从CButtonST派生而来的,所以在引用它转载 2015-01-17 17:49:47 · 437 阅读 · 0 评论 -
vs2008 添加启动画面(基于对话框)
1. 手动添加CSplashWnd类SplashWnd.h[cpp] view plaincopy#ifndef _SPLASH_HEADER_ #define _SPLASH_HEADER_ #pragma once //#include "afxwin.h" // CSplashWnd原创 2015-01-17 19:17:58 · 317 阅读 · 0 评论 -
VC 判断CString字符串中各位是数字,大小写字母,符号,汉字
// UNICODE字符集 view sourceprint?CString str = L"0123abc雲中鶴+-*ほニホ"; CString shuzi,biaodianfuhao,hanzi,daxiezimu,xiaoxiezimu; for (int i = 0 ; i {转载 2015-01-17 10:31:57 · 940 阅读 · 0 评论 -
vs2008MFC中WebBrowser控件禁止新窗口弹出的解决办法
但是IE可以有状态栏,WebBrowser中我找了一下,没有发现能够显示状态栏的操作,在spy++中查看,也不像IE那样有状态栏的窗口。所以,我又仔细研究了一下WebBrowser关于状态栏的事件。后来发现StatusTextChange中其实就可以直接获取到状态栏的文字了。 于是,写代码的事情就很简单了,而且是完美的解决问题,不管是js的 window.open 还是一原创 2015-01-13 14:57:59 · 1553 阅读 · 0 评论 -
MFC 控件显示层次调整
使用MFC的设计器,想调整控件的叠放次序, 在窗口界面按Ctrl+D,每个控件会显示一个编号,这个编号决定绘制的顺序,即叠放的次序,号越小越往前,就是说1能盖住2原创 2015-04-29 23:23:59 · 836 阅读 · 0 评论 -
msdn汉化版
https://msdn.microsoft.com/zh-cn原创 2015-04-29 10:27:55 · 643 阅读 · 0 评论 -
用SendMessage模拟某一按钮的点击事件
今天在写程序的时候,用到了进程间的通信,上网查了些相关的资料,一般都是通过消息、共享内存、 socket,管道(Pipe),信箱(Mailslot),等等。因为我进程间通信的时候数据量不太大,所以就先测试了一下消息。 一般情况下,用消息来实现进程通信相对比较简单,自定义消息、手动添加消息映射、编写响应函数,发送端先FindWindow(),然后就向目标进程SendMessage()转载 2015-04-29 14:40:13 · 2702 阅读 · 0 评论 -
DOM应用程序实时操作ie浏览器内容---遍历网页中的元素
一、摘要 在我们编写的程序中,如果想要实现对浏览器打开的网页进行监视、模拟操纵、动态提取用户输入、动态修改......等功能,那么请你抽出宝贵的时间,继续往下阅读。本文介绍的知识和示例程序都是围绕如何遍历 HTML 中的表单(form)并枚举出表单域的属性为目标的,对于网页中的其它元素,比如图象、连接、脚本等等,应用同样的方法都可以轻松实现。二、网页的文档层次结构 IE 浏览器转载 2015-04-27 19:18:35 · 2156 阅读 · 0 评论 -
开发WEB机器人的三种常用方法
我们在windows平台上写一些WEB机器人程序的时候,通常有三种方法。1.webbrowser一种是使用webbrowser控件加载网页,用MSHTML来操控整个网页,进行模拟填表、提交、点击、采集数据。这种方式开发起来比较简单。但由于需要加载整个页面,缺点是速度慢、效率不高,内存占用大,难以做成多线程并发。2.Winhttp一种是直接基于HTTP协议来做,分析出转载 2015-04-27 20:48:51 · 587 阅读 · 0 评论 -
CInternetSession的简单使用
1. CInternetSession的简单使用CInternetSession session;CHttpFile *file = NULL;CString strURL = " http://www.20abcd.com";CString strHtml = "”; //存放网页数据 try{ file = (CHttpF原创 2015-04-27 20:22:23 · 539 阅读 · 0 评论 -
学习web控件开发博客
一个很好的学习web开发博客:http://blog.csdn.net/charlessimonyi/article/details/18450783这一章,我们来动手实践VC调用JS函数。我们动手写一个HTML,其中包含这样一段JS代码:[html] view plaincopyscript type="text转载 2015-04-27 19:47:27 · 344 阅读 · 0 评论