
windows
mydriverc
技术为本
展开
-
邮件标题中有 垃圾邮件 字样
使用闪电邮、outlook都是这样。由于小红帽的反垃圾邮件导致的。 the word [SPAM] added to subject line http://www.winvistatips.com/word-spam-added-subject-line-t530680.html原创 2013-01-25 10:23:57 · 1188 阅读 · 0 评论 -
VC++ SMTP协议电子邮件传送剖析(转)
http://www.cppblog.com/kyelin/archive/2010/10/11/129427.html 要:本文介绍了一种采用SMTP协议规范并通过直接使用SMTP协议命令而在程序中实现电子邮件传送的方法。并在VC++开发环境下给出了部分关键的实现代码。 前言 电子邮件服务作为Internet上应用最多和最广的服务项目得到了非常广泛的应用,在网络应用中也起转载 2011-12-12 15:14:30 · 8346 阅读 · 0 评论 -
VC++实现发送邮件功能
邮件系统通常采用SMTP作为发送协议,POP3作为接受协议(具体内容参考RFC821、RFC1225)。无论是发邮件,还是收邮件都必须要与邮件服务器连接,再通过邮件信息结构发送邮件。VC里提供了三个类CPop3(连接接受邮件服务器)、CSMTP(连接发送邮件服务器)、CMailMessage(邮件信息结构)下面是个例子,你参考一下!//发送邮件void CTestDlg::转载 2011-12-03 22:22:11 · 3324 阅读 · 1 评论 -
Windows中的消息详细列表
消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。 消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时的坐标。这个记录类型叫做TMsg,它在Windows单元中是这样声明的: type TMs转载 2007-06-20 09:37:00 · 675 阅读 · 0 评论 -
在C#中调用VC编写的dll库
如何在C#中使用C/C++写的DLL。举一个我做过的例子说明:建立VC工程DllDemo,建立的时候选择MFC AppWizard(dll),选择Regular Dll using shared MFC Dll或者MFC Extension Dll。现在可以写一个函数代码,在DllDemo.cpp文件中添加这些代码。也可以使用新的文件添加代码;extern “C“ __declspec(dll原创 2007-09-11 13:24:00 · 1061 阅读 · 0 评论 -
C# ClipCursor
public Rectangle rect; [DllImport("user32.dll",EntryPoint="clipcursor")] private static extern bool clipcursor(Rectangle lpRect) 然后在你的绘制函数树中 Rectangle rect=原创 2007-09-04 10:16:00 · 2812 阅读 · 0 评论 -
ClipCursor
函数功能;该函数把光标限制在屏幕上的一个矩形区域内,如果调用SetCursor或用鼠标设置的一个随后的光标位置在该矩形区域的外面,则系统自动调整该位置以保持光标在矩形区域之内。 函数原型:BOOL ClipCursor(CONST RECT★ lpRect); 参数: IpRect:指向RECT结构的指针,该结构包含限制矩形区域左上角和右下角的屏幕坐标,如果该指针为NULL转载 2007-09-03 17:19:00 · 2626 阅读 · 0 评论 -
GetClientRect,ClientToScreen,ClipCursor
CRect rect; //创建一个矩形区域 GetClientRect(&rect); //指定窗口的用户区域矩形,得到RECT(即以所在窗口左上角为原点, 仅仅是个大小,返回值的左上角永远为0,0) ClientToScreen(转载 2007-09-03 17:17:00 · 1474 阅读 · 0 评论 -
Invalidate和UpdateWindow的区别
Invalidate在消息队列中加入一条WM_PAINT消息,其无效区为整个客户区。 UpdateWindow直接发送一个WM_PAINT消息,其无效区范围就是消息队列中WM_PAINT消息(最多只有一条)的无效区。 效果很明显,当调用Invalidate之后,屏幕不一定马上更新,因为WM_PAINT消息不转载 2007-08-03 10:12:00 · 2093 阅读 · 0 评论 -
利用Socket 编写SMTP 发送邮件程序
print?#include #include #include #include using namespace std; #define WSWENS MAKEWORD(2,0) int main() { sockaddr_in sin; WSADATA wsadata; if(WSAStartup(WSWENS, &w转载 2011-12-12 15:16:06 · 1457 阅读 · 0 评论 -
LPCTSTR
类型理解 LPCTSTR类型: L表示long指针 这是为了兼容Windows 3.1等16位操作系统遗留下来的,在win32中以及其他的32位操作系统中, long指针和near指针及far修饰符都是为了兼容的作用。没有实际意义。 P表示这是一个指针 C表示是一个常量 T表示在Win32环境中, 有一个_T宏 STR表示这个变量是一个字符串转载 2011-12-12 16:06:59 · 593 阅读 · 0 评论 -
CHAR与WCHAR处理函数
用atoi让我很不舒服,于是网上找到这资料,原名叫,觉得标题不妥于是把TCHAR改成WCHAR.字符分类: 宽字符函数普通C函数描述 iswalnum() isalnum() 测试字符是否为数字或字母 iswalpha() isalpha() 测试字符是否是字母 iswcntrl() iscntrl() 测试字符是否是控制符 iswdigit()转载 2011-12-12 16:38:51 · 967 阅读 · 1 评论 -
IE主页被自动修改,无法编辑注册表Start Page
IE主页被自动修改,修改注册表“无法编辑Start Page:写该值的新内容出错”!我的IE7的主页被改成了"www.6700.cn?tn=102759",在IE属性-常规中修改成空白页后不重启主页正常,但重启计算机后又被改回。修改注册表HKEY_USER\.DEFAULT\Software\Microsoft\Internet Explorer\Main的StartPage键值时,总转载 2012-03-22 19:03:41 · 21752 阅读 · 0 评论 -
chm 已取消到该网页的导航,打不开
方法 11. 双击此 .chm 文件。 2. 在“打开文件安全警告”对话框,单击以清除“打开此文件前始终询问”复选框。 3. 单击“打开”。 方法 21. 右键单击该 CHM 文件,然后单击“属性”。 2. 单击“取消阻止”或者“解除锁定”。 3. 双击此 .chm 文件以打开此文件。转载 2012-02-25 23:37:19 · 1125 阅读 · 0 评论 -
在ue中编辑汉字为什么是横的
字体有两种,一个记得开头带@号的是横的往下找找不带@的就ok了转载 2012-02-26 00:19:31 · 4361 阅读 · 0 评论 -
禁止IE8 的“首次运行自定义设置”
1.打开注册表,在HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main 下新建REG_DWORD 值DisableFirstRunCustomize ,并设置DisableFirstRunCustomize 的数值为1 即可。转载 2012-02-05 23:05:26 · 1308 阅读 · 0 评论 -
Windows7下无法编辑注册表的问题
今天Win7升级IE9后发现,IE的默认主页被恶意修改了。本以为问题不大,查找注册表,发现注册表HKEY_USERS\….\Software\Microsoft\Internet Explorer\Main的Start Page被修改,谁知修改成about:blank的时候报错说没有权限编辑。最终的解决办法如下:用管理员身份运行C:\Windows\regedit.exe,右键查看Ma转载 2012-02-05 23:03:36 · 1385 阅读 · 0 评论 -
lstrcpy function
Warning Do not use. Consider using StringCchCopy instead. See Remarks.SyntaxCopyLPTSTR WINAPI lstrcpy( __out LPTSTR lpString1, __in LPTSTR lpString2);Pa转载 2011-12-13 11:21:39 · 635 阅读 · 0 评论 -
vc2005 windowsXP IE 8 下的BHO DLL调试 .
1. 为了方便找到Attach的IE关闭所有的IE窗口, Cltr + F5 或者 Debug->start without debuging 选择 default InternetExplorer 启动一个IE窗口2.Attach BHO到前面打开的IE窗口中,注意图2虽然只开了一个IE窗口,可是却看到了两个IE进程。5936是IE的主进程,5336是TAB进程,如果再开几个TA转载 2011-12-12 23:44:13 · 949 阅读 · 0 评论 -
pragma comment的使用
该宏放置一个注释到对象文件或者可执行文件。#pragma comment( comment-type [,"commentstring"] )comment-type是一个预定义的标识符,指定注释的类型,应该是compiler,exestr,lib,linker之一。commentstring是一个提供为comment-type提供附加信息的字符串,Remarks:1、co转载 2011-12-13 09:55:09 · 410 阅读 · 0 评论 -
利用IPicture接口加载、显示图片
数年前做一个项目时,参考了《Programming Server-Side Application For Microsoft Windows 2000》一书,该书作者就是大名鼎鼎的Jeffery Rechard,《Windows核心编程》的作者。当时为工作组内其他人翻译了第二章。时至今日,将这个老文发出来为我的博客充数,也希望对别人有所帮助。 第二章 设备I/O与线程间通信 我转载 2007-07-31 09:52:00 · 902 阅读 · 0 评论 -
TranslateMessage
TranslateMessage函数,它将按键消息转换为字符消息。如果消息为WM_KEYDOWN或者WM_SYSKEYDOWN,并且按键与位移状态相组合产生一个字符,则TranslateMessage把字符消息放入消息队列中。此字符消息将是GetMessage从消息队列中得到的按键消息之后的下一个消息。转载 2007-07-17 22:25:00 · 924 阅读 · 0 评论 -
系统按键与非系统按键
WM_SYSKEYDOWN和WM_SYSKEYUP中的「SYS」代表「系统」,它表示该按键对Windows比对Windows应用程序更加重要。WM_SYSKEYDOWN和WM_SYSKEYUP消息经常由与Alt相组合的按键产生,这些按键启动程序菜单或者系统菜单上的选项,或者用于切换活动窗口等系统功能(Alt-Tab或者Alt-Esc),也可以用作系统菜单快捷键(Alt键与一个功能键相结合,例如Al转载 2007-07-01 14:20:00 · 1724 阅读 · 0 评论 -
进程注入的研究与实现(上)
为了对内存中的某个进程进行操作,并且获得该进程地址空间里的数据,或者修改进程的私有数据结构,必须将自己的代码放在目标进程的地址空间里运行,这时就避免不了使用进程注入方法了。进程注入的方法分类如下: 带DLL的注入 利用注册表注入 利用Windows Hooks注入 利用远程线程注入 利用特洛伊DLL注入 不带DLL的注转载 2007-06-30 16:12:00 · 2165 阅读 · 2 评论 -
进程注入的研究与实现(下)
5. 无DLL注入 在第三中方法中,我们启动远程线程时,线程函数是我们从Kernel32.dll中取得的LoadLibrary函数的地址为线程函数的地址,其实我们可以直接将线程函数体和函数参数写入目标进程的地址空间,然后创建远程线程。 使用这个方法时,需要注意以下几个问题: (1) 远程线程函数体不得使用kernel32.dll,user32.dll以外的函数。因为这个两个模块在各转载 2007-06-30 16:16:00 · 1275 阅读 · 0 评论 -
显示链接 隐式链接
显示连接指知道函数的原型,定义一个函数指针后,用LoadLibrary和GetProcAddress函数取函数的地址的方法。隐式链接指已经包含了函数的.h文件,直接引用函数,在连接的时候将.lib文件连接进去。隐式链接后,exe程序一加载,Windows自动在先查找exe文件当前目录有没有dll,如果没有则按搜索路径查找,如果搜索路径也没有则会弹出对话框报错,提示找不到dll文件。而显示加载在Lo转载 2007-06-24 14:27:00 · 2065 阅读 · 0 评论 -
在Windows系统中用VC++实现钩子机制
摘要:本文分析了在Windows环境下,什么是钩子程序以及怎样用VC++实现一个钩子机制的关键技术。最后,用一个可以截获鼠标信息的完整程序说明了这些问题。关键词:钩子程序,DLL,消息截获一. 什么是钩子。Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的。钩子(hook)是一种特殊的消息处理机制,钩子可以监视系统或进程中的各种事件消息,截转载 2007-06-24 02:33:00 · 1192 阅读 · 0 评论 -
rundll32.exe介绍和使用方法
一.Rundll32介绍和使用方法动态链接库函数启动器——Rundll32 经常听到有些朋友说:呀!系统的注册表启动项目有rundll32.exe,系统进程也有rundll32.exe,是不是病毒呀?其实,这是对rundll32.exe接口不了解,它的原理非常简单,了解并掌握其原理对于我们平时的应用非常有用,如果能理解了原理,我们就能活学活用,自己挖掘DLL参数应用技巧。 转载 2007-06-24 01:25:00 · 1119 阅读 · 0 评论 -
user32.dll gdi32.dll kernel32.dll
user32.dll gdi32.dll kernel32.dll这三个是windows系统的核心文件。这三个文件不依赖于其它任何文件。然而在NT内核的操作系统下,这三个动态连接库文件是借助于NTDLL.DLL系统文件来实现的。这3个文件只是函数调用的跳板,使用这三个文件只是为了考虑与window 9x系统保持兼容。9x下的程序不用经过修改就可以在NT内核的系统下运行。在NT环境下,真正的win3原创 2007-06-24 00:43:00 · 1943 阅读 · 0 评论 -
利用鼠标键盘钩子截获密码
钩子能截获系统并得理发送给其它应用程序的消息,能完成一般程序无法完成的功能。掌握钩子的编程方法是很有必要的钩子分类 :1、WH_CALLWNDPROC和WH_CALLWNDPROCRET: 使你可以监视发送到窗口过程的消息3、WH_DEBUG 调试钩子4、WH_FOREGROUNDIDLE 当当应用程序的前台线程大概要变成空闲状态时,系统就会调用 WH_FOREGROUND转载 2007-06-24 03:21:00 · 1262 阅读 · 0 评论 -
UpdateWindow
只将窗口显示区域标记为无效以产生WM_PAINT消息,对于某些应用程序来说也许不是完全令人满意的选择。在呼叫InvalidateRect之后,Windows将WM_PAINT消息放入消息队列中,最后由窗口消息处理程序处理它。然而,Windows将WM_PAINT消息当成低优先级消息,如果系统有许多其它的动作正在发生,那么也许会让您等待一会儿工夫。这时,当对话框消失时,将会出现一些空白的「洞」转载 2007-07-01 15:18:00 · 903 阅读 · 0 评论 -
ScrollWindow
void CMy2222View::OnDraw(CDC* pDC){ CMy2222Doc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for native data here pDC->TextOut(100,100,"wwwwwwww"); pDC->TextOut(100,200,"eeeeeeee")转载 2007-07-01 16:03:00 · 1038 阅读 · 0 评论 -
虚拟键码
对于早期的程序写作者来说,真实的键码由实际键盘硬件产生。在Windows文件中将这些键码称为「扫描码(scan codes)」。在IBM兼容机种上,扫描码16是Q键,17是W键,18是E、19是R,20是T,21是Y等等。这时您会发现,扫描码是依据键盘的实际布局的。Windows开发者认为这些代码过于与设备相关了,于是他们试图通过定义所谓的虚拟键码,以便经由与设备无关的方式处理键盘。其中一些虚拟键转载 2007-07-01 16:32:00 · 1177 阅读 · 0 评论 -
MFC的子类化技术
Windows是一个基于消息的系统,消息在Windows的对象之间进行着传递。子类化和Windows的钩子机制存在于消息系统之中,我们可以利用这 些机制来操纵、修改甚至丢弃那些在操作系统或是进程中传递的消息,以求改变系统的一些行为。子类化技术用来截取窗口或控件之间的消息,当然是消息在到达目 的窗口之前完成的操作。这些被截获的消息既可以保留也可以修改它们的状态,之后就继续发送到目的地。子类化技术实现转载 2007-07-17 22:23:00 · 604 阅读 · 0 评论 -
IfeatureSelection:SelectFeatures方法介绍
已知一个要素图层和我们的选择条件,寻找出符合要求的要素并闪烁显示,使用的IfeatureSelection接口的SelectFeatures方法Public Sub searchSelection(byval sqlfilter as string, byval pFeatLyr as iFeatureLayer)Dim pFilter As IqueryFilter ‘做一个过滤器pFilter转载 2007-07-04 12:39:00 · 8814 阅读 · 1 评论 -
通过空间表和属性表的连接来进行标注
通过空间表和属性表的连接来进行标注,需要进行属性表和空间表的关联(代码如下)。ITable dispTable=((IDisplayTable)feaLayer).DisplayTable ;IMemoryRelationshipClassFactory fac=new MemoryRelationshipClassFactoryClass ();IRelationshipClass relCla转载 2007-07-04 14:09:00 · 1362 阅读 · 0 评论 -
用DEF文件从DLL导出一个类的方法
用DEF从DLL导出一个函数,或用__declspec(dllexport)指令从DLL中导出一类,想必大家已经很熟悉了,也经常使用着。这里向大家介绍一种用DEF文件从DLL导出一个类的方法。具体原理或为什么就不废话了,学会导出后,再慢慢回味吧。这里主要叙述操作步骤。1。打开VC6.0,新建一个"Win32 Dynamic-Link Library"工程,假设叫DefClass,在“Dll转载 2007-07-03 01:14:00 · 1518 阅读 · 1 评论 -
不要忘了在Link中设置.lib
使用DLL,不要忘了projects link中设置好.lib一般是把.lib放在客户程序的文件夹中。原创 2007-07-03 01:02:00 · 771 阅读 · 0 评论 -
DLL(Dynamic Link Libraries)
DLL(Dynamic Link Libraries)专题: 比较大的应用程序都由很多模块组成,这些模块分别完成相对独立的功能,它们彼此协作来完成整个软件系统的工作。可能存在一些模块的功能较为通用,在构造其它软件系统时仍会被使用。在构造软件系统时,如果将所有模块的源代码都静态编译到整个应用程序EXE文件中,会产生一些问题:一个缺点是增加了应用程序的大小,它会占用更多的磁盘空间,程序转载 2007-07-03 00:55:00 · 684 阅读 · 0 评论 -
定时器
Windows定时器是PC硬件和ROM BIOS架构下之定时器一种相对简单的扩充。回到Windows以前的MS-DOS程序写作环境下,应用程序能够通过拦截者称为timer tick的BIOS中断来实作时钟或定时器。一些为MS-DOS编写的程序自己拦截这个硬件中断以实作时钟和定时器。这些中断每54.915毫秒产生一次,或者大约每秒18.2次。这是原始的IBM PC的微处理器时脉值4.772720 M转载 2007-07-01 17:07:00 · 755 阅读 · 0 评论