How can I force the attribute dialog box to display for an _INSERT issued with acedCommand using ObjectARX?
You need to use a global function in ObjectARX called acedInitDialog. This is parallel to how the initdia function in AutoLISP must be called prior to issuing the INSERT command.
When dialog initialization occurs before acedCommand, both the "insert" and "Enter Attributes", dialog boxes will display during command execution.Because the "insert" fields do not normally require modification, it is only desirable to display the attributes dialog for user input. In order to display the attribute dialog box instead of command line prompts, divide the command sequence into two parts so that the initialization call is made shortly before
attribute values are solicited.
static void testOut()
//set vars first
struct resbuf rb;
rb.restype = RTSHORT;
rb.resval.rint = 1;
pt1[X] = pt1[Y] = 4.0;
int rterr = acedCommand ( RTSTR, L"_.insert", RTSTR, L"myBlock", RTPOINT,
pt1, RTNONE );
// ask to display attribute dialog
// continue the command
acedCommand(RTREAL, 1.0, RTREAL, 1.0, RTREAL, 0.0, RTNONE);