ymsgauth.pas

来自「Yahoo Messenger for Mobile」· PAS 代码 · 共 62 行

PAS
62
字号
unit YmsgAuth;

interface

Uses Windows,Classes, Sysutils;

Type TKeys = Array[1..2] of String;

Function EncryptString(UserName, Password,Seed: String): Tkeys;

implementation

Uses YchatU1, YchatU2;

Var
// Getyahoostrings: Function(UserName,Password,Seed,Key1,Key2: Pchar; T: Boolean): Boolean; stdcall;
 YmsgFunc: Function(UserName,Password,Seed,Key1,Key2: Pchar; T: Boolean): Boolean; Stdcall;
 //Private Declare Function YMSG12_ScriptedMind_Encrypt Lib "YMSG12ENCRYPT.dll" (ByVal username As String, ByVal password As String, ByVal Seed As String, ByVal result_6 As String, ByVal result_96 As String, intt As Long) As Boolean
 TheStream : TResourceStream;

Function EncryptString(UserName,Password,Seed: String): Tkeys;
Var
Pword: Pchar;
FunctionCall,K1,K2: String;
Lib: Thandle;
Ret: Boolean;
List: TStrings;
Len: Integer;
I: integer;
begin
 SetLength(K1,255);
 SetLength(K2,255);
 Lib:=LoadLibrary(Pchar(Path+'YMSG.dll'));
//  Lib:=LoadLibrary(Pchar(Path+'testdll.dll'));
  If Lib=0 Then
   Begin
    Exit;
   End
    else
 Begin
 List := TStringList.Create;
{ Form1.ListDLLExports('ymsg.dll', List);
 for i := 0 to List.Count - 1 do
   If Trim(List[I])<>'' Then
       FunctionCall:=List[I];}
  YmsgFunc:=GetProcAddress(Lib,Pchar('YMSG12_ScriptedMind_Encrypt'));
  Ret:=True;
  YmsgFunc(Pchar(''),Pchar(Password),Pchar(Seed),Pchar(K1),Pchar(K2),Ret);
  Result[1]:=String(K1);
  Result[2]:=String(K2);
  SetLength(Result[1],50);
  SetLength(Result[2],50);
  List.Free;
 End;
End;


end.



⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?