Hi
Concerning the first question ("
The system cannot find the file specified"), I think the problem isn't in the spaces in the PATH, but the space between the last "\" and the name of the application: "...\ CurrentMoth.exe".
Now, about the second point: "
Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding."
Well. First, if calling the app only once it works, so, you probably do not have a "server problem".
Have two or more "connections" to a database will lead to problems ONLY if you create the connection in a way that prevents other applications of open the database too. If you are open the database in a "exclusive" mode, than you can have only ONE connection open at a time. But I think that this is not the "default" way to open a database... I usually use "microsoft access" in small apps and never had a problem like this. But... I have an APP that tryes to open a microsoft access database and sometimes it fails, because other application opens it in a esclusive mode. So it's possible.
Another problem coud be the operations in the database, not the connection at all.
If you are trying to read a table or row of table that is locked because other proccess is writing to it (for example), than you can have these types of issues too.
If it's not important that all the proccess that you want to launch run in parallel, you can simple make a call to ".WaitForExit()" after start the proccess. Ex:
'Call CurrentMonth
Dim objProcess As System.Diagnostics.Process = New System.Diagnostics.Process()
objProcess.StartInfo.FileName = "D:\Profiles\abc\My Documents\Visual Studio 2010\Projects\CurrentMonth\CurrentMonth\bin\Debug\CurrentMonth.exe"
objProcess.StartInfo.Arguments = contactId.ToString + " 1"
objProcess.Start()
objProcess.WaitForExit()
This will make each proccess be launched only after the last one finished.
Doing this, you will know when the task is finished and is safe to continue to work on the database.
If it's a connection issue and you do not have access to the "CurrentMonth" app, you can use the code above, closing the connection before enter the looping and reopen it when exits the looping.