INtime SDK Help
ntxCreateRtProcess(INtimeDotNet)
INtime SDK v7.1 > About INtime > Alternate APIs > INtimeDotNet > ntxCreateRtProcess(INtimeDotNet)

Loads an RT executable and runs it in a new process.

Visual Basic:

Function ntxCreateRtProcess(
  ByVal hLoc As Integer,
  ByVal strName As String,
  ByVal strArgs As String,
  ByRef pProcessAttributes As NTXPROCATTRIBS,
  ByVal dwFlags As Integer)
As Integer

Function ntxCreateRtProcess(
  ByVal hLoc As Integer,
  ByVal strName As String,
  ByVal strArgs As String,
  ByVal dwFlags As Integer)
As Integer

Visual C#:

Int32 ntxCreateRtProcess (
  Int32 hLoc,
  String strName,
  String strArgs,
  ref INtime.NTXPROCATTRIBS pProcessAttributes,
  Int32 dwFlags);

Int32 ntxCreateRtProcess (
  Int32 hLoc,
  String strName,
  String strArgs,
  Int32 dwFlags);

The second definition passes 0 (zero) for the NTXPROCATTRIBS structure, which causes all defaults to apply. When using the first definition, the fields should be assigned reasonable values other than zero.

Parameters

hLoc
The location of the RT nucleus on which the process will be created. This can be any NTXLOCATION value.
strName
The pathname to the RTA file which will load and start as a new process.
strArgs
A string that contains the process' arguments; the string may be empty if there are none.
pProcessAttributes
An NTXPROCATTRIBS structure.
dwFlags
Controls certain attributes of the new process. Undefined flag bits must be zero. Currently defined flag bits include:
NTX_PROC_DEBUG Starts the process in a halted state for debugging. (Identical to the RT Application Loader's -debug switch.)
NTX_PROC_EXECUTABLE_DS Marks the process' data segment executable. (Identical to the RT Application Loader's -odseg switch.)
NTX_PROC_SHOW_PROGRESS Displays the RT Application Loader's progress bar during the ntxCreateRtProcess call.
NTX_PROC_WAIT_FOR_INIT

Causes the RT Application Loader to wait for the loaded process to complete its initialization phase. The loader waits until an object (it can be any object) is cataloged as "R?END_INIT" in the loaded process's object directory, or the internal timeout period elapses.

To catalog an object as R?END_INIT the following API call can be used when the INtime Process has finished its initialization phase: CatalogRtHandle(NULL_RTHANDLE, GetRtThreadHandles(THIS_PROCESS), static_cast("R?END_INIT")); 

Return Values

The handle to the new process.

INtimeException Status

E_LOCATION
Invalid location value.
E_NTX_COMM_FAILURE
The link died while creating the process.

Requirements

Versions Reference
INtime 3.0 INtimeDotNet

See Also

INtimeDotNet system calls, Process system calls, NTXPROCATTRIBS, RT Application Loader