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