¿Cómo puedo mostrar las declaraciones de impresión en el modo de depuración de OPNET Modeler?

Estoy escribiendo código C ++ en OPNET Modeler. Intento simular mi escenario en modo depurador y necesito rastrear la función en la que lo escribí. Necesito mostrar las declaraciones impresas que puse en mi código.

Utilicé en modo depurador: ***ltr function_name()*** luego ***c***

Pero el resultado se ve así:

 Type 'help' for Command Summary ODB> ltr enqueue_packet() Added trace #0: trace on label (enqueue_packet()) ODB> c |-----------------------------------------------------------------------------| | Progress: Time (1 min. 52 sec.); Events (500,002) | | Speed: Average (82,575 events/sec.); Current (82,575 events/sec.) | | Time : Elapsed (6.1 sec.) | | DES Log: 28 entries | |-----------------------------------------------------------------------------| |-----------------------------------------------------------------------------| | Progress: Time (1 min. 55 sec.); Events (1,000,002) | | Speed: Average (69,027 events/sec.); Current (59,298 events/sec.) | | Time : Elapsed (14 sec.) | | DES Log: 28 entries | |-----------------------------------------------------------------------------| |-----------------------------------------------------------------------------| | Progress: Time (1 min. 59 sec.); Events (1,500,002) | | Speed: Average (51,464 events/sec.); Current (34,108 events/sec.) | | Time : Elapsed (29 sec.) | | DES Log: 28 entries | |-----------------------------------------------------------------------------| |-----------------------------------------------------------------------------| | Simulation Completed - Collating Results. | | Events: Total (1,591,301); Average Speed (48,803 events/sec.) | | Time : Elapsed (33 sec.); Simulated (2 min. 0 sec.) | | DES Log: 29 entries | |-----------------------------------------------------------------------------| |-----------------------------------------------------------------------------| | Reading network model. | |-----------------------------------------------------------------------------| 

Necesito mostrar las declaraciones impresas en mi código. ¿Dónde tiene que aparecer? ¿Hay algún paso antes de ejecutar la simulación para asegurar que el depurador OPNET usa Visual Studio y pase por mi código?

OPNET Modeler proporciona los siguientes comandos para imprimir la salida de seguimiento:

op_prg_odb_print_major () Imprime una secuencia de cadenas en el dispositivo de salida estándar, en el formato de las declaraciones de traza ODB que comienzan en el nivel de sangría principal.

op_prg_odb_print_minor () Imprime una secuencia de cadenas en el dispositivo de salida estándar, en el formato de las declaraciones de traza ODB en el nivel de sangría menor.

op_prg_text_output () Imprime una secuencia de cadenas definidas por el usuario en el dispositivo de salida estándar.

Por ejemplo:

 if (op_prg_odb_ltrace_active ("tcp_window")) { /* a trace is enabled, output Window-Related Variables */ char str0[128], str1[128], str2[128]; sprintf (str0, "rcv requests pending : (%d)", num_rcvs_allowed); sprintf (str1, "local receive window : (%d)", receive_window); sprintf (str2, "remote receive window : (%d)", remote_window); op_prg_odb_print_major ("Window-Related Variables", str0, str1, str2, OPC_NIL); sprintf (str0, "send unacked : (%d)", send_unacked); sprintf (str1, "send_next : (%d)", send_next); sprintf (str2, "receive next : (%d)", receive_next); op_prg_odb_print_minor (str0, str1, str2, OPC_NIL); } 

Ejemplo de salida tal como aparece en el dispositivo de salida estándar:

  | Window-Related Variables | rcv requests pending : (3) | local receive window : (6400) | remote receive window : (10788) | send unacked : (4525) | send_next : (5000) | receive_next : (1200) 

[Código tomado de la documentación de OPNET Modeler.]

Nota: supongo que está modificando los modelos estándar y está utilizando el repository stdmod. Si este es el caso, su código no se está comstackndo y no verá ninguna statement impresa en el depurador. Consulte la preferencia “Repositorios de simulación de red” para ver si está utilizando un repository en lugar de comstackr su propio código.

No tengo mucha idea de lo que intentas hacer, pero creo que puedes enviar las declaraciones directamente a un depurador para el código C ++ usando

OutputDebugStringA("Your string here");

o solo

OutputDebugString("Your string here");

¡Espero que esto ayude!