mIRC Home    About    Download    Register    News    Help

Print Thread
A
AdmWiggin
AdmWiggin
A
Hello. I am trying to run a function out of an mIRC DLL in Delphi (it is an mIRC Function), and here is what i have so far(this part works)... it is the actual running of this function that is giving me problems :tongue: :
Code:
function nameiwant(mWnd, aWnd: HWND; var data, parms: PChar; show, nopause:boolean): integer; external 'path\dllname.dll' name 'actualname';
i go to call it in many different ways, and they all compile just fine, but result in an error crazy

Can anyone help me? confused

Joined: Dec 2002
Posts: 2,884
S
Hoopy frood
Offline
Hoopy frood
S
Joined: Dec 2002
Posts: 2,884
What sort of error? You mean mIRC says the function doesn't exist, or that it crashes mIRC?

A
AdmWiggin
AdmWiggin
A
Ok, I get the impression that you misunderstood me.

here goes :
I have an mIRC Dll... it is already compiled etc.

I am trying to use a function out of that DLL in a Delphi program.

I have tried many things, but it all comes up with an invalid write of address.

the above code is my definition code in Delphi (defining the function), it is just how i call it that I am wondering... Thanks in advance...

Joined: Feb 2003
Posts: 2,737
Hoopy frood
Offline
Hoopy frood
Joined: Feb 2003
Posts: 2,737
Try removing the path to the dll, just specifying the dll.
You may have declared the export or params wrong.

Post a link to the DLL you are attempting to use.


Well. At least I won lunch.
Good philosophy, see good in bad, I like!
Joined: Dec 2002
Posts: 2,884
S
Hoopy frood
Offline
Hoopy frood
S
Joined: Dec 2002
Posts: 2,884
Ahh I see. Sorry, I didn't even take in the external declaration te first time round.

Well, I don't have much experience using the external declaration, but presumably the problem is that you haven't defined your function as using the stdcall calling convention.

A
AdmWiggin
AdmWiggin
A
well, i would post a link, but... well... i dont have a link to post crazy

someone else had the dll in their script, and i just used it...

it is a very common dll in MSN Messenger scripts :
ssl.dll

im beary confused! crazy
edit:
here is my current code (with stdcall put in there grin):
Code:
function msnp(mWnd, aWnd: HWND; var data, parms: PChar; show, nopause:boolean): integer; stdcall; external 'MSN\ssl.dll' name 'msnp8';

function ssl(data2: PChar): String;
var data,parms: PChar;
    mWnd,aWnd: HWND;
    show,nopause: boolean;
begin
  data := pchar(username + ' > ' + pword + ' > ' + data2);
  parms := '';
  mWnd := Chatting.Handle;
  aWnd := mWnd;
  show := false;
  nopause := true;
  msnp(mWnd,aWnd,data,parms,show,nopause);
  ssl := string(data);
end;
'username' and 'pword' are predefined to be the username and password of the user.
Chatting is my main form.

Last edited by AdmWiggin; 25/02/04 01:39 PM.
Joined: Nov 2003
Posts: 2,321
T
Hoopy frood
Offline
Hoopy frood
T
Joined: Nov 2003
Posts: 2,321
if your main purpose of editing/creating a dll is for the SSL, you can use the Microsoft.XMLHTTP COM object.

A
AdmWiggin
AdmWiggin
A
Oh thank you! grin

/me is very happy grin
^_^

Joined: Nov 2003
Posts: 2,321
T
Hoopy frood
Offline
Hoopy frood
T
Joined: Nov 2003
Posts: 2,321
yw smile


Link Copied to Clipboard