>First of all, Keith, why do you PRE your posts and add the carriage returns manually? You don't need to do that. I know. This pro'ly isn't important in the least to most of the folks here, but when you type long lines, of course the textbox wraps the lines. The problem is that when replying to the wrapped text the quote symbol only appears at the start of "physical" lines, ie at the start of the document, or after the CR (or CRLF...whichever), hence when you reply to me all of thes lines will begin with quote characters whereas the above line of your reply has only one quote character and the line wraps. Also, I use a screen magnifcation program and based on my screen resolution and magnification, the line lengthe that I'm restricting my text to is about what fits on the screen at one time. Finally, if I don't use PRE, my signature comes out looking like ...kt instead of ...kt (this would also be important if I were using any code snippets, which in this particular case I happen not to be) Again, these would not be important to anyone but me. I hope that it isn't stressing you. > >>Two questions: 1) (most important) how do I find out the name of the directory from which a COM object wasinstantiated? > >You can get that from _VFP.ServerName. So you'll need to access that from the COM and return it, though, I'm not positive how it works in DCOM, but it should give you the path local to the machine where the COM resides. I suspect that you're right about the DCOM piece. I'll give this a try. > >> 2) Is there a property or function that gives you the version of a COM object? > >If you build it with the version info, AGetFileVersion() will get it. So then AGetFileVersion(x, _VFP.ServerName) should get me what I'm looking for. Mouchos tanxo seen yore. ...kt