<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="../../../design/description.xslt" type="text/xsl"?>
<node lang="en" type="DynamicNode.Lib.OS.NShellCommand" assembly="NLibDefault" xmlns="http://dynamicnodes.mastersign.de/description">
  <caption>Shell Command</caption>
  <group>Operating System</group>
  <description>Executed a command on the shell of the operating system.</description>
  <inPorts>
    <port name="triggerIn">
      <type>&lt;TAny&gt;</type>
      <description>
        If a connection is established to this port, the node is only activated if a token arrives.
      </description>
    </port>
    <port name="command">
      <type>System.String</type>
      <description>The command string to execute.</description>
    </port>
    <port name="args">
      <type>System.String</type>
      <description>A string with whitespace separated arguments.</description>
    </port>
  </inPorts>
  <outPorts>
    <port name="triggerOut">
      <type>DynamicNode.Core.ControlTrigger</type>
      <description>Emits a trigger token if the execution of the command is finished.</description>
    </port>
    <port name="process">
      <type>System.Diagnostics.Process</type>
      <description>Emits a reference to the process handle object after the command has startet.</description>
    </port>
  </outPorts>
  <helpText>
    This node executes a command with the shell of the operating system.
    Allowed are executable files (*.exe, *.bat, *.com under Windows operating systems)
    or files the operating system has an executable associated.
  </helpText>
</node>