RE:FastBinaryFiles and NT4.0 REPOST
- To: mathgroup at smc.vnet.net
- Subject: [mg6920] RE:[mg6804] FastBinaryFiles and NT4.0 REPOST
- From: dougb at xti.com
- Date: Fri, 25 Apr 1997 14:00:47 -0400 (EDT)
- Organization: XonTech
- Sender: owner-wri-mathgroup at wolfram.com
(Also Tech Support [TS 8473] --Re:FastBinaryFiles and NT 4.0)
I previously posted:
>Hi
>Has anybody been able to successfully load FastBinaryFiles on
>an NT 4.0 system? I've tried using Bruce Miller's recommended
>file re-names and snagging the mlink32.dll from 2.2, but I get
>an Error Message from WinNT stating that mlink32.dll is a
>"Bad Image", then the message suggests I check the distribution
>disk. (Was mlink32.dll compiled for Win32s ?)
>I've also been un-successful in any attempt to run a re-compiled
>version of FastBinaryFiles.
>I get the following messages when I try my Install[""]
>MessageName::messg : OpenReadBinary::usage cannot be set to
>OpenReadBinary[] opens the named file for reading. I ...
>enameConverion for more information. filename, it must be set
>to a string.
>(I get the same message with the interupting ... in different
>places for OpenAppendBinary and OpenWriteBinary then I get a
>General::stop followed by the following message)
>ToExpression::sntx : Syntax error in or before " ... ^".
>Unfortuneately, Bruce is on vacation so I haven't heard back
>from Wolfram yet.. Has anybody else been able to get
>FastBinaryFiles to work????
>Any help would be much appreciated.
>Doug
>dougb at xti.com
Here is an update:
The binary.tm file can be compiled if the C code (that is commented as
such in the binary.tm file) is cut out and placed in a separate
binary.c file. Then run mprep on the remaining binary.tm file placing
the mprepped code into binarytm.c.
mprep binary.tm -o binarytm.c
I then compile the code using Borland C++ 5.0 IDE (using the
description on how to compile MathLink files for Windows systems as
described in the HELP section)
I've been successful in determining the source of the "
MessageName::messg : OpenReadBinary::usage " error messages.. If all
the usage statements are deleted from the binary.tm file prior to
running it through mprep... these messages no longer occur.
Which leaves the remaining error message -> ToExpression::sntx :
Syntax error in or before " ... ^".
In the binary.tm file there are the 2 following Evaluates...
:Evaluate:
resolveNewFilename[s_String] :=
Module[{first = First[Characters[s]], colonpos, drive, os},
**CODE**
]
:Evaluate:
resolveExistingFilename[s_String] :=
Module[{first = First[Characters[s]], drive, os, fileinfo,
**CODE**
]
which after mprep has been run -> get placed inside of if(_res)
statements .. inside of the binarytm.c file
If BOTH of these if(_res) statements are commented out of the
binarytm.c code..
The resulting executable links to Mathematica no problem...
In[1] = Install["myfastbinary", LinkMode->Launch,
LinkProtocol->"filemap"]
Out[1] = LinkObject[myfastbinary,2,2]
However, there is still one tincy wincy little problem.. The
OpenWriteBinary (etc.) routines require these functions to create
their links to the output files...
Anybody have any ideas?
Doug