📄 setpassword.pas
字号:
{##########################################
旁注入侵专用程序 3.0升级版
-----------------------------------------
模块:设置数据库密码
作者:2005.3.26日晚 明小子
##########################################}
unit SetPassWord;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Mask, RzEdit, RzBtnEdt, StdCtrls, ComObj;
type
TSetPassForm = class(TForm)
OldPass: TEdit;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
Label2: TLabel;
DataPath: TRzButtonEdit;
NewPass: TEdit;
Label3: TLabel;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure DataPathButtonClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
SetPassForm: TSetPassForm;
implementation
uses MainUnit;
{$R *.dfm}
procedure TSetPassForm.Button2Click(Sender: TObject);
begin
close;
end;
{设置数据库密码}
procedure TSetPassForm.Button1Click(Sender: TObject);
var
AVariant: Variant;
sDBName, DBPass: string;
begin
try
if Not FileExists(DataPath.Text) then
begin
application.MessageBox('请确认数据库文件路径是否正确!', '提示', 48);
Exit;
end;
Screen.Cursor := crHourGlass;
sDBName := Trim(DataPath.Text);
DBPass := Trim(OldPass.Text);
if FileExists(sDBName + '.tmp') then
DeleteFile(pchar(sDBName + '.tmp'));
AVariant := CreateOleObject('JRO.JetEngine');
AVariant.CompactDataBase('Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:DataBase Password=' + DBPass + ';Data Source=' + sDBName,
'Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:DataBase Password=' + NewPass.Text + ';Data Source=' + sDBName + '.tmp');
DeleteFile(pchar(sDBName));
ReNameFile(sDBName + '.tmp', sDBName);
Screen.Cursor := crDefault;
application.MessageBox('数据库密码已设置成功!', '提示', 64);
except
Screen.Cursor := crDefault;
application.MessageBox('设置密码失败,却确认旧密码是否正确!', '提示', 48);
end;
end;
procedure TSetPassForm.DataPathButtonClick(Sender: TObject);
begin
MainForm.OpenFile.DefaultExt := 'mdb';
MainForm.OpenFile.Filter := '数据库文件 (*.mdb)|*.mdb|所有文件 (*.*)|*.*';
if MainForm.OpenFile.Execute then
DataPath.Text := MainForm.OpenFile.FileName;
end;
procedure TSetPassForm.FormCreate(Sender: TObject);
begin
SetPassForm.FormStyle := fsStayOnTop; //窗体置顶
end;
procedure TSetPassForm.FormShow(Sender: TObject);
begin
DataPath.Clear;
OldPass.Clear;
NewPass.Clear;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -