Mein konkretes Problem ist, dass ich aus einem NAV Code heraus einen neuen RTC öffnen möchte. Dabei soll auf dem neu geöffneten RTC sofort Code ausgeführt werden. Ich versuche es über den Parameter "runpage" der Microsoft.Dynamics.Nav.Client.exe.
Wenn ich den runpage Parameter weglasse, wird eine neue Instanz des RTC gestartet (was ich auch als zwei Tasks im Taskmanager sehen kann).
Sobald ich aber den runpage Parameter nutze, öffnet mir NAV die Page immer in meiner aktuellen Instanz (es wird also kein zweiter RTC geöffnet).
Vielleicht kann mir jemand einen Tipp geben?
Der Aufruf des RTC erfolgt über folgenden Code.
- Code: Alles auswählen
ServerInstance.RESET;
ServerInstance.SETRANGE("Server Instance ID",SERVICEINSTANCEID);
IF ServerInstance.FINDFIRST THEN BEGIN
CLEAR(Registry);
FileName := Registry.GetValue('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Microsoft.Dynamics.Nav.Client.exe','','');
//Page öffnen bei Start RTC, aber keine neue Instanz
Argument := '"dynamicsnav://'+ServerInstance."Server Computer Name"+':'+FORMAT(ServerInstance."Server Port")+'/'+ServerInstance."Service Name"+'/'
+COMPANYNAME+'/runpage?page=67028"';
//Start einer neuen RTC Instanz
//Argument := '"dynamicsnav://'+ServerInstance."Server Computer Name"+':'+FORMAT(ServerInstance."Server Port")+'/'+ServerInstance."Service Name"+'/'
// +COMPANYNAME+'/"';
CLEAR(Process);
Process := Process.Process();
Process.StartInfo.UseShellExecute := FALSE;
Process.StartInfo.FileName := FileName; // path to program
Process.StartInfo.Arguments := Argument;
Process.Start();
END;
Verwendete Variablen
- ServerInstance Record Server Instance
Process DotNet System.Diagnostics.Process.'System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
Registry DotNet Microsoft.Win32.Registry.'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
FileName Text
Argument Text