1. VB6 is not capable of making win32 dlls, so you'll have to use a different language or settle for a COM object (.ocx).

2. As /help DLL support explains, all exported procedures within the dll that you want to call from mIRC need certain arguments:

Code:
The routine in the DLL being called must be of the form:

int __stdcall procname(HWND mWnd, HWND aWnd, char *data, char *parms, BOOL show, BOOL nopause)