Re: Calling functions in a DLL in Win32

*To*: mathgroup at smc.vnet.net*Subject*: [mg54021] Re: [mg54008] Calling functions in a DLL in Win32*From*: Todd Gayley <tgayley at wolfram.com>*Date*: Tue, 8 Feb 2005 05:30:56 -0500 (EST)*Sender*: owner-wri-mathgroup at wolfram.com

At 02:12 AM 2/7/2005, Erich Neuwirth wrote: >In VBasic to execute the mci commands of windows, >use the following function: > >Private Declare Function mciExecute Lib "winmm.dll" _ > (ByVal lpstrCommand As String) As Long > >which then accepts string parameters. > >Is there a way to write a Mathematica wrapper function to >get the same functionality? Erich, .NET/Link includes exactly that functionality via its DefineDLLFunction command. Here is an example of how to use it: Needs["NETLink`"]; mciExecute = DefineDLLFunction["mciExecute", "winmm.dll", "int", {"string"}]; mciExecute["some string"] You could even use a VB.NET-style declaration if you prefer (but note that Long in VB.NET is 64 bits, not 32 as in VB6, so you need to use Integer instead): mciExecute = DefineDLLFunction["mciExecute", "winmm.dll", "Integer", {"ByVal lpstrCommand As String"}]; Todd Gayley Wolfram Research