PerlCtrl question

PerlCtrl question

am 29.10.2008 17:02:49 von fzarabozo

Hello All,

I apologize if I shouldn't be asking about this here. I trying to write an
"extension" for a mail server (for windows) that, according to the
documentation, requires a DLL file with some entry points (methods with
arguments, as I understand it), and should get a return value according to
the processing that such methods do.

I tried using PerlCtrl (from PerlDevKit) to create the DLL, and it works
perfectly as ActiveX (I can use Win32::OLE or a VBScript to call the methods
and get their return values). However, the mail server is not accepting my
DLL file as an extension, saying that none of the functional entry points
were found in that library.

I emailed the author of the server and he couldn't give much support about
it, saying that he doesn't know Perl or the tools I'm using, but what he
could tell me is that DLL Libraries and ActiveX Libraries are not the same
thing and that could be the reason my extension is not working.

Do any of you know if there's a (possibly good) way to create simple DLL
Libraries from Perl code?

Thanks a lot, as always, for your time.


Paco Zarabozo

_______________________________________________
ActivePerl mailing list
ActivePerl@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

RE: PerlCtrl question

am 29.10.2008 19:57:57 von Jan Dubois

On Wed, 29 Oct 2008, Zarabozo, Francisco (GE, Corporate) wrote:

Hi Paco,

> I emailed the author of the server and he couldn't give much support about
> it, saying that he doesn't know Perl or the tools I'm using, but what he
> could tell me is that DLL Libraries and ActiveX Libraries are not the same
> thing and that could be the reason my extension is not working.
>
> Do any of you know if there's a (possibly good) way to create simple DLL
> Libraries from Perl code?

PerlCtrl can only implement IDispatch based COM objects and not arbitrary
DLLs. I can't think of any way of doing this that won't require writing
the actual interface in some other language. So you may have to implement
the DLL entry points in C/C++ and then call from there into Perl, either
by embedding a Perl interpreter directly, or by using COM to invoke your
PerlCtrl based code.

I have no idea if you could implement the interface in a different language,
like Visual Basic, which would make calling into the IDispatch based
interface of PerlCtrl easier. You may want to ask the vendor of the server
code for some sample plugins in different languages to see if there is
anything you can adopt to your needs.

Cheers,
-Jan

_______________________________________________
ActivePerl mailing list
ActivePerl@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs