📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, SConnect, DB, DBClient, MConnect;
type
TForm1 = class(TForm)
Button1: TButton;
OpenDialog1: TOpenDialog;
Button2: TButton;
Button3: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Button4: TButton;
Button5: TButton;
Button6: TButton;
Button7: TButton;
DCOMConnection1: TDCOMConnection;
WebConnection1: TWebConnection;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
F: File;
i: Cardinal;
TempBuf: array [0..$00036035] of Byte;
//TempBuf: array [0..$00001919] of Byte;
begin
with OpenDialog1 do
if Execute then
begin
AssignFile(F, FileName);
Reset(F, 1);
Seek(F, $001ef9d0);
//Seek(F, $001039E4);
BlockRead(F, TempBuf, Length(TempBuf));
for i := 0 to Length(TempBuf) - 1 do
TempBuf[i] := TempBuf[i] xor $FF xor Lo(i);
Seek(F, $001ef9d0);
//Seek(F, $001039E4);
BlockWrite(F, TempBuf, Length(TempBuf));
CloseFile(F);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
F: File;
i, TempDword: Cardinal;
TempBuf: array [0..$30B] of Byte;
begin
with OpenDialog1 do
if Execute then
begin
AssignFile(F, FileName);
Reset(F, 1);
Seek(F, $100);
BlockRead(F, TempBuf, Length(TempBuf));
TempDword := 0;
for i := 0 to Length(TempBuf) - 1 do
TempDword := TempDword + TempBuf[i];
Edit1.Text := IntToHex(TempDword, 8);
CloseFile(F);
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
var
F: File;
i, TempDword: Cardinal;
TempBuf: array [0..$14B] of Byte;
//TempBuf: array [0..$BB] of Byte;
begin
with OpenDialog1 do
if Execute then
begin
AssignFile(F, FileName);
Reset(F, 1);
Seek(F, $b7ab0);
//Seek(F, $5b740);
BlockRead(F, TempBuf, Length(TempBuf));
TempDword := 0;
for i := 0 to Length(TempBuf) - 1 do
TempDword := TempDword + TempBuf[i];
Edit2.Text := IntToHex(TempDword, 8);
CloseFile(F);
end;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
try
if not DCOMConnection1.Connected then
DCOMConnection1.Connected := True;
if not DCOMConnection1.Appserver.Login(WideString(Edit1.Text), WideString(Edit2.Text), False) then
ShowMessage(DCOMConnection1.Appserver.GetErrorString(0));
except
on E:exception do
ShowMessage(E.Message);
end;
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
DCOMConnection1.Connected := False;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
try
if not WebConnection1.Connected then
WebConnection1.Connected := True;
if not WebConnection1.Appserver.Login(WideString(Edit1.Text), WideString(Edit2.Text), False) then
ShowMessage(WebConnection1.Appserver.GetErrorString(0));
except
on E:exception do
ShowMessage(E.Message);
end;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
WebConnection1.Connected := False;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -