自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 收藏
  • 关注

转载 解决tomcat启动产生[SetPropertiesRule]警告问题

转载自:http://zhang-yingjie-qq-com.iteye.com/blog/313284[SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.j2ee.server:*' did not find a matching prop

2012-08-24 11:51:48 808

原创 自制菜单笔记

1. 绘制菜单 1> 先用Cmenu::ModifyMenu编程实现传统菜单到自制菜单项的转化 2> 添加响应WM_MEASUREITEM消息   // 在主框架中响应  WM_MEASUREITEM的工作时填充itemWidth和itemHeight    在这个消息中, 设置单个菜单项的宽度  /*   * MEASUREITEMSTRUCT for ownerdraw

2012-08-21 21:15:49 2010

原创 菜单笔记

1. 响应单个命令 ON_COMMAND(ID_MENU_OPEN, OnOpenFile)  void CMenuDlg::OnOpenFile() {  MessageBox(_T("x")); } 2. 响应连续的命令 ON_COMMAND_RANGE(ID_MENU_COPY, ID_MENU_CUT, OnOrderCom) // 命令项的连续处理

2012-08-21 21:14:48 636

原创 获取特定的目录

LPITEMIDLIST pidl;    TCHAR szPath [MAX_PATH];    if(SUCCEEDED( SHGetSpecialFolderLocation ( NULL, CSIDL_FAVORITES, &pidl )))    {        if ( SHGetPathFromIDList ( pidl, szPath ))         {

2012-08-21 21:09:48 545

原创 SH函数打开文件夹

自动打开“我的电脑”      我的问题是在Win95 or Win98 下,能不能编一个程序实现这样的功能. 该程序先自动打开“我的电脑”, 然后在自动关闭, 然后在模拟按键Alt+F4出现关机界面, 最后在模拟输入"Alt+y"关闭计算机。 能实现的话,如何实现?采用的语言为vc++ 5.0 。谢谢!(wenwp01)          可以使用SHGetSpecialFold

2012-08-21 21:07:55 2574

原创 SHGetSpecialFolderLocation

#include // 获取特殊目录WINSHELLAPI HRESULT WINAPI SHGetSpecialFolderLocation(    HWND hwndOwner,    int nFolder,    LPITEMIDLIST *ppidl);   hwndOwner: 指定了"所有者窗口",在调用这个函数是可能出现的对话框或信息框.   nFo

2012-08-21 21:07:17 836

转载 SHGetFileInfo

SHGetFileInfo函数WINSHELLAPI DWORD WINAPI SHGetFileInfo(    LPCTSTR pszPath,    DWORD dwFileAttributes,    SHFILEINFO FAR *psfi,    UINT cbFileInfo,    UINT uFlags); // 获取系统图标#if 1

2012-08-21 21:06:06 646

原创 SHFileOperation

SHFILEOPSTRUCT FileOp;   ZeroMemory((void*)&FileOp,sizeof(SHFILEOPSTRUCT));        FileOp.fFlags = FOF_SIMPLEPROGRESS   |   FOF_NOCONFIRMATION   |   FOF_NOCONFIRMMKDIR ;     FileOp.hNameMapp

2012-08-21 21:05:11 391

转载 ShellExecute的妙用

ShellExecute的妙用ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外部程序有一定的控制。  有几个API函数都可以实现这些功能,但是在大多数情况下ShellExecute是更多的被使用的,同时它并不是太复杂。下面举例说明它的用法。开始一个新的应用程序   ShellExecute(Handle, '

2012-08-21 21:04:35 744

原创 dll注入方式

方式一、特点:只把DLL注入目标进程New idea 在DLL,DllMain中调用一个设置HOOK的函数,  在此函数中,调用宿主进程的相关窗体查找的函数(g_hWnd),返回窗体线程的ID.  调用SetWindowHookEx(g_hHook)设置窗体线程钩子,能接受到消息码??? That's a question..!  在回调函数中进程相关的操作....!!

2012-08-21 21:03:23 836

原创 Dll_horse

DWORD  dwProcessID = FindTargetThreadId("explorer.exe"); //查找目标进程ID  // 打开目标进程    HANDLE hProcess = OpenProcess( PROCESS_CREATE_THREAD | PROCESS_VM_OPERATION | PROCESS_VM_WRITE, FALSE, dwProcessID

2012-08-21 21:02:46 305

转载 Firebug控制台详解

转载自:http://www.ruanyifeng.com/blog/2011/03/firebug_console_tutorial.htmlFirebug是网页开发的利器,能够极大地提升工作效率。但是,它不太容易上手。我曾经翻译过一篇《Firebug入门指南》,介绍了一些基本用法。今天,继续介绍它的高级用法。=============================

2012-08-20 08:41:12 387

原创 远程DLL

//远程注入BOOL CHookTestDlg::InsertDll(DWORD dwProcessID, LPCSTR lpcDllName){/// DWORD  dwProcessID = FindTargetThreadId("explorer.exe"); //查找目标进程ID if(0 == dwProcessID)  return FALSE;  // 打开目

2012-08-19 15:18:16 387

原创 加载DLL

typedef void(*pNewThread)(void); m_hDll = ::LoadLibrary(_T("Insert.dll")); if(! m_hDll) {  MessageBox(_T("加载DLL失败!")); } else {  pNewThread pFun = (pNewThread) GetProcAddress(m_hDll, _

2012-08-19 15:17:54 385

原创 DLL导出

导出:#define MYLIBAPI extern "C" __declspec(dllexport)

2012-08-19 15:17:22 369

原创 DLL注入后创建线程失败

原因:DLL的返回值应该为TRUE.//使用如下代码可成功创建线程#include #include DWORD WINAPI ThreadProc(  LPVOID lpParameter   // thread data){ MessageBox(NULL, "线程开始!", "", MB_OK);// ChangeMemory(); retur

2012-08-19 15:16:44 1247 1

原创 DLL中设置局部钩子

1.新建线程(注意DllMain中要返回TRUE,否则会内存引用出错)2.设置钩子          //g_hDll 这个参数为NULL,子程也能被调用    g_Hook = SetWindowsHookEx(WH_CALLWNDPROC, CallWndProc,  g_hDll,       ::GetWindowThreadProcessId(g_hWndFull, NULL

2012-08-19 15:16:14 678

原创 DLL笔记

1.钩子子程 系统用的是被监视的线程来调用此钩子子程的,但是其数据是不共享的.  意味着钩子子程中的修改了全局变量,原来加载此DLL的中的全局变量是不会发生改变的.   可能是堆栈线程的原因,导致它们的数据都不共享的..!! 在回调函数中,就算设置了  静态变量,但是每次调用回掉函数,静态变量的时也是会被重新初始化.!~!  所以如果要共享数据就得:  #pragma

2012-08-19 15:15:12 364

原创 DllMain

//////////////////////////////////////////////////////////////////////#include BOOL WINAPI DllMain(  HINSTANCE hinstDLL,  // handle to DLL module  DWORD fdwReason,     // reason for calling fu

2012-08-19 15:14:29 1199

原创 CreateRectRgn

hdc = BeginPaint(hWnd, &ps);    RECT rtClient;  ::GetClientRect(hWnd, &rtClient);   // 创建一个绘制的区域(也就是说对此hdc的任何绘制, 只有从(0, 0)到(40, 40)的范围内有效)  HRGN hrgn = ::CreateRectRgn(0, 0, 40, 40);  ::

2012-08-19 14:55:37 1476

原创 ExcludeClipRect

hdc = BeginPaint(hWnd, &ps);    RECT rtClient;  ::GetClientRect(hWnd, &rtClient);   // 不包含的剪切区域(也就是说, 从(0, 0)到(400, 400)的矩形, 不会被绘制)   ::ExcludeClipRect(hdc, 0, 0, 400, 400);  ::MoveToE

2012-08-19 14:54:51 1107

转载 加载jpg图片

原文地址:http://blog.csdn.net/qingdaoxuelei/article/details/4387590HANDLE hFile = CreateFile(szImagePath, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); //从指定的路径szIm

2012-08-19 14:54:10 670

原创 绘图函数

AbortPath 抛弃选入指定设备场景中的所有路径。也取消目前正在进行的任何路径的创建工作 AngleArc 用一个连接弧画一条线 Arc 画一个圆弧 BeginPath 启动一个路径分支 CancelDC 取消另一个线程里的长时间绘图操作 Chord 画一个弦 CloseEnhMetaFile 关闭指定的增强型图元文件设备场景,并将新建的图元文件返回一个句柄 Clo

2012-08-19 14:53:43 432

原创 SetROP2

int SetROP2(  HDC hdc,         // handle to DC  int fnDrawMode   // drawing mode);根据nDrawMode设置的方式重新设定绘图的方式,下面就不同的nDrawMode值具体解释绘图模式是如何改变的。首先就nDrawMode的取值有以下的情况:1、R2_BLACK  // 所有绘制出来的像素为

2012-08-19 14:53:13 813

原创 窗口风格

1. Window Styles  WS_BORDER    // 具有边框 Creates a window that has a thin-line border. WS_CAPTION   // 具有标题栏(包含了边框) Creates a window that has a title bar (includes the WS_BORDER style). WS_CHI

2012-08-19 14:52:31 823

原创 MenuBar

// 创建窗口主菜单 HMENU hWndMenu = ::CreateMenu(); HMENU hPopMenu = ::CreatePopupMenu(); ::InsertMenu(hWndMenu, 0, MF_POPUP | MF_INSERT, (int)hPopMenu, TEXT("File(&F)")); HMENU hSubMenu = ::GetSubMen

2012-08-19 14:51:43 615

原创 LoadMenuIndirect

// 菜单栏创建HMENU LoadMenuIndirect(          CONST MENUTEMPLATE *lpMenuTemplate);typedef struct {    WORD versionNumber;    WORD offset;} MENUITEMTEMPLATEHEADER, *PMENUITEMTEMPLATEHEADER;

2012-08-19 14:51:16 740

原创 WM_NCCALCSIZE

1. WM_NCCALCSIZEWM_NCCALCSIZE消息在需要计算窗口客户区的大小和位置时发送。通过处理这个消息,应用程序可以在窗口大小或位置改变时控制客户区的内容。 LRESULT CALLBACK WindowProc(   HWND hwnd,       // handle to window   UINT uMsg,       // WM_NCCALCSI

2012-08-19 14:50:26 1576

原创 WM_COMMAND

WM_COMMAND     加速键   功能表   控件LOWORD(wParam)  加速键ID  功能ID   控件IDHIWORD(wParam)  1    0    通知码lParam    0    0    子窗口句柄

2012-08-19 14:49:44 444

原创 Windows消息大全

消息是如何分类的?其前缀都代表什么含义? 消息ID只是一个整数,Windows系统预定义了很多消息ID,以不同的前缀来划分,比如WM_*,CB_*等等。具体见下表:Prefix Message category ABM Application desktop toolbar  BM Button control  CB Combo box control  CBEM E

2012-08-19 14:49:16 1666

原创 tooltips

#include #pragma comment(lib, "comctl32.lib")  InitCommonControls();   m_ToolTip = CreateWindow(TOOLTIPS_CLASS, (LPSTR) NULL, TTS_ALWAYSTIP,      CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, C

2012-08-19 14:48:21 467

原创 subclass

BOOL SetWindowSubclass(           HWND hWnd,    SUBCLASSPROC pfnSubclass,    UINT_PTR uIdSubclass,    DWORD_PTR dwRefData); BOOL GetWindowSubclass(           HWND hWnd,    SUBCLASSPR

2012-08-19 14:47:50 753

原创 List-View Window Styles

typedef struct _LVCOLUMN {UINT mask;             //说明此结构中哪些成员是有效的int fmt;             //列的对齐方式int cx;              //列的初始宽度LPTSTR pszText;   //列的标题int cchTextMax;     //pszText所指向的缓冲区的大小in

2012-08-18 09:11:14 629

原创 list-report

一、处理绘画前段1. 绘制行void MainWindow::notify(Message &message ){ if (message.wparam == _pListView->getCtrlId()) {  NMHDR *pNmhder = (NMHDR *)message.lparam;  if (pNmhder->code == NM_CUSTOMDRAW)

2012-08-18 09:10:23 627

原创 自绘的一些属性

// 以下两个消息都是父窗口收到的1. WM_MEASUREITEM  // 拦截这个消息, 设置相应的属性// The MEASUREITEMSTRUCT structure informs the system of the dimensions of an owner-drawn control or menu item.// This allows the system t

2012-08-18 09:04:09 466

原创 全面解读WM_NOTIFY

VC中的消息的分类有3种:窗口消息、命令消息和控件通知消息,我们这里要谈的是最后一种:控件通知消息。   控件通知消息,是指这样一种消息,一个窗口内的子控件发生了一些事情,需要通知父窗口。 通知消息只适用于标准的窗口控件如按钮、列表框、组合框、编辑框,以及Windows公共控件如树状视图、列表视图等。 例如,单击或双击一个控件、在控件中选择部分文本、操作控件的滚动条都会产生通知消息。

2012-08-18 09:03:33 545

原创 TreeView

1. Tree View Control Messages    TVM_CREATEDRAGIMAGE    TVM_DELETEITEM    TVM_EDITLABEL    TVM_ENDEDITLABELNOW    TVM_ENSUREVISIBLE    TVM_EXPAND    TVM_GETBKCOLOR    TVM_GETCOUNT

2012-08-18 09:02:59 697

原创 ToolTipCtrl

1. Tree View Control Messages2. Tree View Notification Messages   3. ToolTip StylesTTS_ALWAYSTIP Indicates that the ToolTip control appears when the cursor is on a tool, even if the ToolTip

2012-08-18 09:02:31 382

原创 TabCtrl

1. Tab Control Messages    TCM_ADJUSTRECT    TCM_DELETEALLITEMS    TCM_DELETEITEM    TCM_DESELECTALL    TCM_GETCURFOCUS    TCM_GETCURSEL    TCM_GETEXTENDEDSTYLE    TCM_GETIMAGELIST

2012-08-18 09:01:32 1022

原创 StaticCtrl

1. Static Control Message    STM_SETICON    STM_GETICON    STM_SETIMAGE    STM_GETIMAGE    STN_CLICKED    STN_DBLCLK    STN_ENABLE    STN_DISABLE    STM_MSGMAX

2012-08-18 09:01:00 357

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除