摘要: 忘记 VSS Admin 密码 ! 一不小心将VSS 6 admin用户的密码忘记(再此证明我的粗心),Google了一番,找到以下信息the secret is to hack the um.dat file to remove the Admin passwordfrom offset 80 the bytes are (all numbers are hex)0:80 55 55 bc 7f 41 64 6d 69 6e 00 00 00 00 00 00 000:90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000:a0 00 00 . 阅读全文
posted @ 2009-03-30 10:37 dzqabc 阅读(515) 评论(0) 推荐(0) 编辑
摘要: 突发奇想,同时也实验了一下: 将乱码的网页文件保存为Unicode编码并且添加签名(使用Emeditor),相信多数浏览器都支持Unicode,然后再打开,就会发现编码已经锁定为Unicode编码不可变更了 初步实验成功,不保证一定行,呵呵 阅读全文
posted @ 2009-03-27 17:26 dzqabc 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 如何使用DLL函数动态加载-静态加载 <!--google_ad_client = "pub-8432098110340913";/* busfly_ss_内容区左上 250x250, 创建于 08-2-2 */google_ad_slot = "2731136837";google_ad_width = 250;google_ad_height = 250;//-->公司里的项目里用到加密解密,使用的是客户指定的DLL库来加密解密.开始,我按照以前的方法来使用DLL库,这里也介绍下吧,虽然网上很多.一般动态加载DLL的步骤如下:HINSTA 阅读全文
posted @ 2009-03-27 17:15 dzqabc 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 使用 DEF 文件从 DLL 导出模块定义 (.def) 文件是包含一个或多个描述 DLL 各种属性的 Module 语句的文本文件。如果不使用 __declspec(dllexport) 关键字导出 DLL 的函数,则 DLL 需要 .def 文件。.def 文件必须至少包含下列模块定义语句:文件中的第一个语句必须是 LIBRARY 语句。此语句将 .def 文件标识为属于 DLL。LIBRARY 语句的后面是 DLL 的名称。链接器将此名称放到 DLL 的导入库中。EXPORTS 语句列出名称,可能的话还会列出 DLL 导出函数的序号值。通过在函数名的后面加上 @ 符和一个数字,给函数分配 阅读全文
posted @ 2009-03-27 15:15 dzqabc 阅读(837) 评论(0) 推荐(0) 编辑
摘要: typedef 的用法用途一: 定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如: char* pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, // 和一个字符变量; 以下则可行: typedef char* PCHAR; PCHAR pa, pb; 用途二: 用在旧的 C 代码中,帮助 struct 。以前的代码中,声明 struct 新对象时,必须要带上 struct ,即形式为: struct 结构名对象名,如: struct tagPOINT1 { int x; int y; }; struct tagPOINT1 p1 阅读全文
posted @ 2009-03-27 10:37 dzqabc 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 『通过GetProcAddress函数动态调用dll中地函数,是否必须通过extern C声明导出函数?』 通过GetProcAddress函数动态调用dll中的函数,是否必须通过extern "C"声明导出函数? [已结贴,结贴人:darongtou] 如题,网上搜了N多资料,一直找不到确定的答案,目前我的答案是“是”。 晚上因为一个程序,好好研究了一下。 很多资料上都只是说明“如果没有 extern "C" 修饰,输出函数仅仅能从 C++ 代码中调用。” 却并没有明确这个调用是通过显式调用还是隐式调用,我也一直没有看到过有代码是通过显示调用没有ext 阅读全文
posted @ 2009-03-26 17:47 dzqabc 阅读(1575) 评论(0) 推荐(0) 编辑
摘要: 关于C++中函数指针的使用(包含对typedef用法的讨论) (一)简单的函数指针的应用。//形式1:返回类型(*函数名)(参数表) char (*pFun)(int); char glFun(int a){ return;} void main() { pFun = glFun; (*pFun)(2); } 第一行定义了一个指针变量pFun。首先我们根据前面提到的“形式1”认识到它是一个指向某种函数的指针,这种函数参数是一个int型,返回值是char类型。只有第一句我们还无法使用这个指针,因为我们还未对它进行赋值。 第二行定义了一个函数glFun()。该函数正好是一个以int为参数返回cha 阅读全文
posted @ 2009-03-26 17:45 dzqabc 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 本文说明什么是动态链接库 (DLL) 以及在使用 DLL 时可能发生的各种问题。然后,本文说明在开发您自己的 DLL 时应该考虑的一些高级问题。在说明什么是 DLL 的过程中,本文将说明动态链接方法、DLL 依赖性、DLL 入口点、导出 DLL 函数以及 DLL 故障排除工具。简介对于“适用于”一节中列出的 Microsoft Windows 操作系统,操作系统的大量功能是由动态链接库 (DLL) 提供的。另外,当您在这些 Windows...对于“适用于”一节中列出的 Microsoft Windows 操作系统,操作系统的大量功能是由动态链接库 (DLL) 提供的。另外,当您在这些 Win 阅读全文
posted @ 2009-03-26 17:44 dzqabc 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 常量指针与指针常量 这样连着的两个词,前面的一个通常是修饰部分,中心词是后面一个词。这里的常量指针和指针常量便是如此。 常量指针,表述为“是常量的指针”,它首先应该是一个指针。 指针常量,表述为“是指针的常量”,它首先应该是一个常量。 常量指针,它是一个指针,什么样的指针呢?它是一个指向常量的指针,就是说我们定义了一个常量,比如 const inta=7; 那么我们就可以定义一个常量指针来指向它 const int *p=&a; 也可以分成两步,即 const int *p;p=&a; 那么它有什么作用呢?首先我们来说说常量的属性,因为我们的指针是指向常量的,常量和变量的变量的 阅读全文
posted @ 2009-03-24 10:51 dzqabc 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 从int 到string的几种方法 1. int sprintf( char *buffer, const char *format [, argument] ... ); <stdio.h>例如: int ss; char temp[64]; string str; ss = 1000; sprintf(temp, "%d", ss); string s(temp); //调用string的方法 cout<<s.c_str()<<endl;//1000 cout<<s.size()<<endl; //长度为42. 阅读全文
posted @ 2009-03-21 09:23 dzqabc 阅读(210) 评论(0) 推荐(0) 编辑