unit Unit1;
interface
uses
Windows, SysUtils, Classes, Forms, ShellAPI, Controls, StdCtrls;
type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
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.
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- 共享上网专题 (2157篇文章)
- 电脑密码设置手册 (1227篇文章)
- Cisco密码恢复专题 (3101篇文章)
- win98频道 (176篇文章)
- delphi三十六之加密篇 (543次浏览)
- 用Delphi做一个OpenGL控件 (313次浏览)
- 用Delphi制作录音程序 (312次浏览)
- 用Delphi编写点对点传文件程序 (309次浏览)
- Delphi笔试题 (155次浏览)
- 将鼠标锁定在一定范围 (151次浏览)
- Delphi设计PhotoShop型弹出菜单 (144次浏览)
- 用DELPHI 设 计 屏 幕 保 护 程 序 (118次浏览)
- 用Delphi7设计FTP上传软件 (115次浏览)
- 在Delphi中自动检测、建立数据库别名和表格 (111次浏览)



