Then the problem is when I wait until the instance of Acad is ready. I can't get The process by his name with the Process class because Autocad window is not ready yet and I can't create the AcadApplication instance. It only works when Autocad is completely loaded so I use .

The acadGrid Method running in the thread creates a new document in AutoCad and then draws a grid. It sometimes works and sometimes not, and when it works it uses even 50% of CPU. Sometimes i gett this exception.

I believe the best method would be to create a script (.scr) file that you'll define as a parameter to launching your process, as opposed to trying to wait on AutoCAD to load prior to running your routine.

A script file is a basic text file that lists AutoCAD commands, and any relevant values if you define them, and runs them when loaded. Loading a script as a parameter to your process will automatically make that script run.