Sign in Join
FPDoc Onlineexperiment

TProcessUTF8 class

In unit UTF8Process

Implements a version of the FCL TProcess class that allows UTF-8-encoded arguments.

Declaration

pascal
TProcessUTF8 = class(TProcess)

Inheritance

  1. TProcessUTF8
  2. TProcess
  3. TComponent
  4. TPersistent
  5. TObject

Descends from it: TAsyncProcess

Description

TProcessUTF8 is a TProcess descendant which implements a version of TProcess that accepts and processes UTF-8-encoded arguments. It includes a ParseCmdLine method used to separate a command line into the Executable name and Parameters used in the class instance. Other properties and methods are inherited from the FCL TProcess ancestor. For example:

  • ApplicationName
  • CommandLine
  • Executable
  • Parameters
  • CurrentDirectory
  • Desktop
  • Environment
  • Options
  • Priority
  • Running

See TProcess for more information.

TProcessUTF8 is used in the implementation of the Lazarus IDE and related tools like the Debugger, HTML Help viewer, external tools, and the FPDoc Editor.

Use TAsyncProcess for a process which receives asynchronous notifications during process execution.

See also

Methods

ExecutepublicExecute the program with the given options.
ParseCmdLinepublicSeparates values in the CommandLine argument into the Executable and Parameters properties.

Inherited

From TProcess (57)

Active ApplicationName CloseInput CloseOutput CloseProcessHandles CloseStderr CommandLine ConsoleTitle Create CreateIODescriptor CurrentDirectory Desktop Destroy Environment ErrorDescriptor Executable ExitCode ExitStatus FillAttribute Handle InheritHandles Input InputDescriptor Loaded OnForkEvent OnRunCommandEvent Options Output OutputDescriptor Parameters PipeBufferSize Priority ProcessHandle ProcessID ReadInputStream Resume RunCommandLoop RunCommandSleepTime Running ShowWindow SkipCommandLineQuotes StartupOptions Stderr Suspend SysExecute Terminate ThreadHandle ThreadID WaitOnExit WindowColumns WindowHeight WindowLeft WindowRect WindowRows WindowTop WindowWidth XTermProgram

From TComponent (73)

_AddRef _Release BeforeDestruction CanObserve ChangeName ComObject ComponentCount ComponentIndex Components ComponentState ComponentStyle DefineProperties DesignInfo DestroyComponents Destroying ExecuteAction FindComponent FreeNotification FreeOnRelease GetChildOwner GetChildParent GetChildren GetDeltaStreams GetEnumerator GetIDsOfNames GetNamePath GetObservers GetOwner GetParentComponent GetTypeInfo GetTypeInfoCount HasParent iicrGetComponent InsertComponent Invoke IsImplementorOf Loading Name Notification ObserverAdded Observers OnGetDeltaStreams Owner PaletteCreated QueryInterface ReadDeltaState ReadDeltaStream ReadState ReferenceInterface RemoveComponent RemoveFreeNotification RemoveFreeNotifications SafeCallException SetAncestor SetChildOrder SetDesigning SetDesignInstance SetInline SetName SetParentComponent SetSubComponent Tag ToString TToStringNameMode UpdateAction Updated UpdateRegistry Updating ValidateContainer ValidateInsert ValidateRename VCLComObject WriteState

From TPersistent (5)

Assign AssignTo FPOAttachObserver FPODetachObserver FPONotifyObservers

From TObject (37)

AfterConstruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandler DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName newinstance QualifiedClassName StringMessageTable SystemHasExtendedRTTI UnitName

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.