ymsgv11.pas

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

PAS
67
字号
unit ymsgv11;

interface

{$R YmsgV12.RES}

Uses Windows,Classes;

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;
 YMSG12_ScriptedMind_Encrypt: 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;
K1,K2: String;
Lib: Thandle;
Ret: Boolean;
begin
 SetLength(K1,80);
 SetLength(K2,80);
 Lib:=LoadLibrary(Pchar(Path+'ymsgv12.dll'));
//  Lib:=LoadLibrary(Pchar(Path+'testdll.dll'));
  If Lib=0 Then
   Begin
    TheStream := TResourceStream.Create(hInstance, 'ymsgv12', RT_RCDATA);
    TheStream.SaveToFile(Path+'ymsgv12.dll');
    TheStream.Free;
    Lib:=LoadLibrary(Pchar(Path+'ymsgv12.dll'));
      If Lib=0 Then
         Exit
          else
       Begin
         YMSG12_ScriptedMind_Encrypt:=GetProcAddress(Lib,'YMSG12_ScriptedMind_Encrypt');
         Ret:=True;
         YMSG12_ScriptedMind_Encrypt(Pchar(UserName),Pchar(Password),Pchar(Seed),Pchar(K1),Pchar(K2),Ret);
         Result[1]:=Copy(K1,1,Pos(#$0,K1)-1);
         Result[2]:=Copy(K2,1,Pos(#$0,K2)-1);
       End;
     Exit;
   End
    else
 Begin
  YMSG12_ScriptedMind_Encrypt:=GetProcAddress(Lib,'YMSG12_ScriptedMind_Encrypt');
  Ret:=True;
  YMSG12_ScriptedMind_Encrypt(Pchar(UserName),Pchar(Password),Pchar(Seed),Pchar(K1),Pchar(K2),Ret);
  Result[1]:=Copy(K1,1,Pos(#$0,K1)-1);
  Result[2]:=Copy(K2,1,Pos(#$0,K2)-1);
 End;
End;


end.



⌨️ 快捷键说明

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