General information
Title:
How does UNC I/O really work?
I would like to learn the basic "processing path" for the completion of I/O that started with the opening of a file named using UNC and resident on another machine.
I know from a MSKB article that VFP "passes the path to the operating system by using the appropriate API." in order to resolve access to the file specified.
Using a utility called Filemon, which "monitors and displays all file system activity on a system", I tried something simple. On a machine with a specific table on it I fired it up and set its monitoring in motion. Then, on another machine, I started the same utility but told it to monitor only activity for a specific file name. Once that was done I started VFP and did a USE to the specific table on the other machine, using a UNC path to do so. The table opened as expected. Then I executed a SET ORDER TO followed by a SEEK, then a BROWSE.
I was surprised by the Filemon results obtained.
The log on the system where I executed the commands showed all kinds of file I/O activity. The log on the system where the file resided showed NO FILE ACTIVITY of any kind!?!?
The reason for my surprise is the following observation of several months ago:
I had a Win98SE system with ZipMagic active on it. From a Win2K machine's Explorer window I accessed the zipped VFP xsource file on the Win98SE machine and rt-clicked a "Copy". The I moved the mouse to the directory that I had made and named VFP7 XSOURCE and rt-clicked "Paste". To my surprise the Win2K system's directory did NOT contain the zipped files, but rather fully decompressed versions of all of the files and their sub-directories! I could only conclude that ZipMagic had done its thing, indicating for sure that the Win98 system had to participate in the processing to transfer the files. Of course I had no Filemon utility back then.
And logic also says that the PC where the file resides has to play a part in reading it (or writing to it) for another system.
So the queston is, what are the processes involved in successfully completing UNC-designated I/O operations between two systems?
Thanks
Next
Reply
View the map of this thread
View the map of this thread starting from this message only
View all messages of this thread
View all messages of this thread starting from this message only