Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Simple PerlEz Sample

by choeppner (Pilgrim)
on Sep 06, 2006 at 04:29 UTC ( #571371=perlquestion: print w/replies, xml ) Need Help??

choeppner has asked for the wisdom of the Perl Monks concerning the following question:

Hey,
I am looking for something just a little more than the manual pages.

I want to use PerlEzCreate, PerlEzCall, and PerlEzDelete to call a sub within perlscript.pl from VC++.

I cannot find a simple sample anywhere. Anyone got one or have a link to one?

I have only seen code samples for perl_construct, call_argv, and perl_destruct and have not been able to apply this to the other method with success.

Thanks

Replies are listed 'Best First'.
Re: Simple PerlEz Sample
by perl_lover (Chaplain) on Sep 06, 2006 at 04:59 UTC
    Hi,

    Follow this link for code samples of PerlEzCreate, PerlEzCall, and PerlEzDelete

    Active State

    -perl_lover-
      Thanks, I will give it a look.
        For pennance to the Monastery, I hammered out the sample that I was searching for.

        // test.cpp : Defines the entry point for the console application. // /* --Contents of "test.pl" sub ezsub($) { my $param = shift; return qq(Parameter passed in is -$param-\n); } */ #include "stdafx.h" #include <windows.h> #include <perlez.h> int _tmain(int argc, _TCHAR* argv[]) { char cmd[80]; char buffer[200]; PERLEZHANDLE perl = PerlEzCreate("test.pl", NULL); if(!perl) return 1; int nInteger = 234; if(PerlEzCall(perl,"ezsub",buffer,sizeof(buffer),"i", nInteger)==0) printf("1 - %s\n", buffer); sprintf(cmd, "ezsub"); char *szString = "456"; if(PerlEzCall(perl,cmd,buffer,sizeof(buffer),"s",szString)==0) printf("2 - %s\n", buffer); sprintf(cmd,"ezsub('%s')",szString); if(PerlEzEvalString(perl,cmd,buffer,sizeof(buffer))==0) printf("3 - %s\n", buffer); PerlEzDelete(perl); return 0; }
        Output
        1 - Parameter passed in is -234- 2 - Parameter passed in is -456- 3 - Parameter passed in is -456-
        ...And please forgive me for posting C code in this sacred place of Perl.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://571371]
Approved by planetscape
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (2)
As of 2022-06-27 12:13 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My most frequent journeys are powered by:









    Results (88 votes). Check out past polls.

    Notices?