in reply to Re^8: Perl program calling external .dll functions
in thread Perl program calling external .dll functions

Of course I still think "L" is wrong. ("Whatever it is, it's definitely not a uint32_t as you're telling Win32::API it is.") You're the only one who suggested otherwise. ("Passed by reference this would render an address, which on a 32-bit platform will usually come through successfully as a 32-bit numeric.")

I'm inclined to think it's neither of the options you presented, though. C++ does have a class named String. Waiting on the OP for clarification. (Upd: Oops, it's actually "string" (in the "std" namespace). )

If he does mean C++'s String, I doubt the layout of the class is defined. A portable solution would be impossible without processing the appropriate .h file. That's why I recommended Inline::CPP.