提取win98上网密码

原创 2002年01月16日 09:47:00
unit Unit1;

interface

uses
  Windows, SysUtils, Classes, Forms, ShellAPI, Controls, StdCtrls;

type
  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    ListBox: TListBox;
    Label1: TLabel;
    Label2: TLabel;
    procedure Label1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    hMPR: THandle;
  end;

var
  Form1: TForm1;

const
  Count: Integer = 0;

function WNetEnumCachedPasswords(lp: lpStr; w: Word; b: Byte; PC: PChar; dw: DWord): Word; stdcall;

implementation

{$R *.DFM}
function WNetEnumCachedPasswords(lp: lpStr; w: Word; b: Byte; PC: PChar; dw: DWord): Word; external mpr name 'WNetEnumCachedPasswords';

type
PWinPassword = ^TWinPassword;
TWinPassword = record
  EntrySize: Word;
  ResourceSize: Word;
  PasswordSize: Word;
  EntryIndex: Byte;
  EntryType: Byte;
  PasswordC: Char;
  end;

var
  WinPassword: TWinPassword;

function AddPassword(WinPassword: PWinPassword; dw: DWord): LongBool; stdcall;
var
  Password: String;
  PC: Array[0..$FF] of Char;
begin
  inc(Count);

  Move(WinPassword.PasswordC, PC, WinPassword.ResourceSize);
  PC[WinPassword.ResourceSize] := #0;
  CharToOem(PC, PC);
  Password := StrPas(PC);

  Move(WinPassword.PasswordC, PC, WinPassword.PasswordSize + WinPassword.ResourceSize);
  Move(PC[WinPassword.ResourceSize], PC, WinPassword.PasswordSize);
  PC[WinPassword.PasswordSize] := #0;
  CharToOem(PC, PC);
  Password := Password + ': ' + StrPas(PC);

  Form1.ListBox.Items.Add(Password);
  Result := True;
end;

procedure TForm1.Label1Click(Sender: TObject);
begin
  ShellExecute(GetDesktopWindow, 'open', 'http://www.utilmind.com', nil, nil, 0);
end;

procedure TForm1.FormShow(Sender: TObject);
begin
  if WNetEnumCachedPasswords(nil, 0, $FF, @AddPassword, 0) <> 0 then
  begin
    Application.MessageBox('Can''t load passwords: User is not logon.', 'Error', mb_Ok or mb_IconWarning);
    Application.Terminate;
  end
  else
  if Count = 0 then
    ListBox.Items.Add('No passwords found...');
end;

end.

制作自启动的MSDN简体中文版和英文版win98ISO镜像

上一篇文章中提到在DOS下安装MSDN简体中文版win98(点这里),过程相当麻烦,安装win98前还得安装一个DOS环境,那么有没有不麻烦的方法呢,方法还是有的,对于有洁癖喜欢用MSDN镜像人来说这...
  • gsls200808
  • gsls200808
  • 2015年12月09日 15:41
  • 4609

虚拟机下安装MSDN简体中文版win98SC_WIN98SE.exe

本文用到的文件下载地址: win98简体中文版:ed2k://|file|SC_WIN98SE.exe|278540368|939909E688963174901F822123E55F7E|/ DO...
  • gsls200808
  • gsls200808
  • 2015年12月08日 10:49
  • 14393

获取路由器内的ADSL上网账号和密码或者获取电脑内的ADSL上网账号和密码教程(by 星空武哥)

欢迎访问我的CSDN博客:http://blog.csdn.net/lsyz0021        前几天因为家里有个路由器老是死机,于是就想换个路由器,但是忘了ADSL拨号密码,于是就研究了如何让获...
  • lsyz0021
  • lsyz0021
  • 2014年11月07日 23:29
  • 2207

虚拟机里Win98装XP Luma主题

把WinXP的Luma主题放到虚拟机中Win98再设置好后……
  • qq_21314221
  • qq_21314221
  • 2016年10月17日 23:56
  • 182

天杀 的pfx证书 提取公钥秘钥 加密签名

项目一开始就入了一个坑 需求是这样的       后台甩给我一个.pfx格式的证书, 有些人就会问了 这个是啥, 我不是大神 就给那些不懂得人 通俗的说一下. 这个东西是一个证书文件, 其中包含 公钥...
  • qq_31249697
  • qq_31249697
  • 2015年12月21日 16:02
  • 3435

wndr3800 路由器 石像鬼1.8.1固件+shadowsocks实现代理上网

下载相关安装文件百度云:gargoyle-ss.zip### 文件夹结构 上传所有文件到路由器/tmp目录下,windows平台可以使用winscp$scp -r ./gargoyle-ss/* ...
  • code_style
  • code_style
  • 2017年06月20日 10:20
  • 1714

Windows 95/98虚拟机OS安装说明书[仅限VirtualBox]

Tutorial:Windows 95/98 guest OSes Windows 95/98虚拟机OS安装说明书 by Technologov» 23. Sep 2008, 13:30 loph...
  • lophyxp
  • lophyxp
  • 2014年11月07日 17:12
  • 8710

NTDS.dit密码提取工具

NTDS.dit密码提取工具 2015年4月5日 zcgonvh / 域渗透 / 评论:1 / 浏览:139 受不了NTDSXTract的龟速,于是用quarkspwdump改了个能读...
  • qq_27446553
  • qq_27446553
  • 2015年04月23日 15:43
  • 774

密码提取-排序

从文件文件中把密码提取出来,并进行排序。 #define _CRT_SECURE_NO_WARNINGS #include #include #include char path[50] = ...
  • liuguangsh
  • liuguangsh
  • 2016年09月09日 09:40
  • 120

【深度学习】基于深度学习的人脸识别系统系列(Caffe+OpenCV+Dlib)

基于深度学习的人脸识别系统系列(Caffe+OpenCV+Dlib)——【二】人脸检测与预处理接口的设计 前言 基于深度学习的人脸识别系统,一共用到了5个开源库:OpenC...
  • Taily_Duan
  • Taily_Duan
  • 2016年12月28日 16:41
  • 2761
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:提取win98上网密码
举报原因:
原因补充:

(最多只允许输入30个字)