diff options
Diffstat (limited to 'tdecore/README.exec')
-rw-r--r-- | tdecore/README.exec | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tdecore/README.exec b/tdecore/README.exec new file mode 100644 index 000000000..f2065b7ad --- /dev/null +++ b/tdecore/README.exec @@ -0,0 +1,41 @@ +Starting other programs + +In KDE 2 and KDE 3 there are several ways to start other programs from within +your application. Here is a short summary of your options with reasons why +you should or should not use them. + +1. fork + exec + +You never want to use this unless you have a very good reason why it is +impossible to use KProcess. + +2. KProcess + +You want to use this if you need to start a new process which needs to be a +child of your process, e.g. because you want to catch stdout/stderr or need +to send it data via stdin. You should never use this to start other KDE +applications unless your application is called kgdb :-) If you need to +send/receive text like data to/from the process, you are probably better +off with KProcIO + +3. KProcIO + +Like KProcess. Unlike KProcess, this class actually makes it easy to +send data to and receive data from the process. + +4. startServiceByDesktopPath + +Preferred way to launch desktop (KDE/Gnome/X) applications or KDE services. +The application/service must have a .desktop file. It will make use of +KDEinit for increased startup performance and lower memory usage. These +benefits only apply to applications available as KDEinit loadable module (KLM) + +5. KRun + +Generic way to open documents/applications/shell commands. Uses +startServiceBy.... where applicable. Offers the additional +benefit of startup-notification. +KRun can start any application, from the binary or the desktop file, +it will determine the mimetype of a file before running the +preferred handler for it, and it can also start shell commands. +This makes KRun the recommended way to run another program in KDE 2. |