Maury, Thanks for your feedback. I agree that they byte-by-byte approach will have to be changed.
I am doing it for a couple of reasons. First, I think it is a severe limitation of Kernel if it can't read in a binary file. Second, because I want to allow the server to send CPRS, or other imaging client, a binary file (i.e. an image), without the client having to be given filesystem access to the image server. It should save setup hassles, and also increase security. Kevin On 8/21/05, Maury Pepper <[EMAIL PROTECTED]> wrote: > Kevin, > > You are on the right track. Increasing the number of characters per READ is > by far the most significant thing you can do to speed up your routine. > Reading one character at a time using a star-Read is very slow. Each M > implementation has a way to do binary reads -- ie, a read which does not > look for a terminator and does not translate any characters (like HT into > spaces), but the M Standard does not specify this level of detail -- it's > left to the implementer. > > I don't know whether VistA provides a way to call a file Open that provides > the necessary parameters for this. Others on this list will. > > Most M's do not have a problem storing binary data strings in globals. (I > know of only one that uses null-terminated strings, and to my knowledge, it > has never been used for VistA.) > > WHY do this at all? It seems like the long-way around. Normally, when a > file is the object of interest, one just points to it by name and lets the > underlaying OS and utilities handle it. > > > ----- Original Message ----- > From: "Kevin Toppenberg" <[EMAIL PROTECTED]> > To: "Hardhats Sourceforge" <[EMAIL PROTECTED]> > Sent: Sunday, August 21, 2005 8:46 AM > Subject: [Hardhats-members] more M read questions > > > > The read command in M seems to be the most complicated function it has. > > > > I am trying to perform a binary read. I do it this way: > > > > read blockIn#255 > > > > The problem is that as I debug the code, $length(blockIn) does not > always=255. > > > > I think this is because sometimes the stream contains a "terminator", > > such as a #13 etc. > > > > How do do a read that ignores the usual "terminators"? > > > > Thanks > > Kevin > > > > > > ------------------------------------------------------- > > SF.Net email is Sponsored by the Better Software Conference & EXPO > > September 19-22, 2005 * San Francisco, CA * Development Lifecycle > Practices > > Agile & Plan-Driven Development * Managing Projects & Teams * Testing & > QA > > Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf > > _______________________________________________ > > Hardhats-members mailing list > > [EMAIL PROTECTED] > > https://lists.sourceforge.net/lists/listinfo/hardhats-members > > > > > ------------------------------------------------------- > SF.Net email is Sponsored by the Better Software Conference & EXPO > September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices > Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA > Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf > _______________________________________________ > Hardhats-members mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/hardhats-members > ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ Hardhats-members mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/hardhats-members