Getting command-line parameters

Getting command-line parameters

Anonymous
Not applicable
2,359 Views
3 Replies
Message 1 of 4

Getting command-line parameters

Anonymous
Not applicable

From my .NET dll I need to get the command line parameters that were used when AutoCAD was launched.

 

In the unmanaged world I used acedGetAcadWinApp.

 

Is there a .NET equivalent?

 

Thanks,

0 Likes
Accepted solutions (1)
2,360 Views
3 Replies
Replies (3)
Message 2 of 4

chiefbraincloud
Collaborator
Collaborator

Not that I am aware of.

 

It appears that acedGetAcadWinApp can be PInvoked, but I'm not sure how you would access the properties from the Pointer that is returned.

 

the signature for 32bit AutoCAD 2012 appears to be ?acedGetAcadWinApp@@YAPAVCWinApp@@XZ

Dave O.                                                                  Sig-Logos32.png
0 Likes
Message 3 of 4

SENL1362
Advisor
Advisor
Accepted solution
       //"C:\Program Files\AutoCAD 20xx\acad.exe" /p "..\Acad.arg"    /myArg1 /nologo
        //Command: args
        //Arg0="D:\Program Files\AutoCAD 20xx.exe"
        //Arg1="/p"
        //Arg2="..\Acad.arg"
        //Arg3="/myArg1"
        //Arg4="/nologo"
        [CommandMethod("Args")]
        	public void GetAcadArguments()
        	{
            	Document dwg = Application.DocumentManager.MdiActiveDocument;
            	Editor ed = dwg.Editor;

                int i = 0;
                foreach (string arg in Environment.GetCommandLineArgs())
                {
                    ed.WriteMessage("\n Arg{0}=\"{1}\"",i++,arg);
                }

            }

 

Message 4 of 4

Anonymous
Not applicable

Environment.GetCommandLineArgs() is exactly what I was looking for.

 

Thanks.

0 Likes