It sounds like we need to back up a little. I'm going to make some assumptions on your application.
Assumption: If you're reading an ASCII script file, you'll probably want to read it sequentially: that is, start at the top and read it in contiguous chunks toward the bottom.
Comment: Any of the CVI or ANSI C functions that are typically used to read from files (ReadFile, fread, fgets, fscanf, etc.) advance the file pointer to the next unread byte in the file. If you're reading a file sequentially, you do not need to manipulate the file pointer. When you open the file, the pointer is at the top of the file. As you read through the file, the file pointer is automatically advanced with each successful read. You don't need to call fsetpos or SetFile
Ptr if you're sequentially reading a file.
Assumption: Your script file is organized into lines.
Suggestion: why not read it as a line? The ANSI C function fgets() reads one line at a time. You don't have to try to figure out where the line ends, the function does it for you and returns the entire line in a string. If the format of each line is identical, you could use fscanf() to read and parse the lines. Reading the file line by line and parsing each line is faster than reading the file character by character.
Comment: If you open a file for binary reading, you can still read the data as ASCII. Binary reads just remove all filters between you and the data (like converting CR-LF to LF).
Comment: While parsing your script lines, use some of the ANSI C search functions, e.g. strstr() to search for a string or strchr to search for a character. These functions will be much more efficient than writing your own function.