I have created a Foxpro COM dll that I am calling from a Visual Basic 6.0 COM object. The VB object is created multiple times, each instance running in its own thread, managed by an in-house task manager. Each object is supposed to perform its task on different sets of data.
When two or more of my VB objects are running simultaneously, I will get "nError: 1705 Message(): File access is denied." The file that I cannot access is usually something like "..\TEMP\FP8C000D.TMP" The line it is telling me the error is occuring on is trying to do a simple select into a cursor.
Why can't I do a select into a cursor from more than one process? If two instances of a Foxpro com object try to create a cursor with the same name, do the temp files collide? That doesn't seem very likely to me.
By the way, I created this DLL as a multi-threaded COM Server (dll), and I get the error I stated above. If I build it as a single-threaded COM server, then I get an error 2031: User-interface operation not allowed at this time. It happens on the exact same line, so I suspect the user interface operation it's trying to perform is a dialog box telling me that file access is denied.
I'm kinda stumped. What am I doing wrong, and is there any way to fix this so that multiple tasks can run side by side without stepping on each other?
When two or more of my VB objects are running simultaneously, I will get "nError: 1705 Message(): File access is denied." The file that I cannot access is usually something like "..\TEMP\FP8C000D.TMP" The line it is telling me the error is occuring on is trying to do a simple select into a cursor.
Why can't I do a select into a cursor from more than one process? If two instances of a Foxpro com object try to create a cursor with the same name, do the temp files collide? That doesn't seem very likely to me.
By the way, I created this DLL as a multi-threaded COM Server (dll), and I get the error I stated above. If I build it as a single-threaded COM server, then I get an error 2031: User-interface operation not allowed at this time. It happens on the exact same line, so I suspect the user interface operation it's trying to perform is a dialog box telling me that file access is denied.
I'm kinda stumped. What am I doing wrong, and is there any way to fix this so that multiple tasks can run side by side without stepping on each other?