You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
set(SHELLANYTHING_INSTALL_CMAKE_DIR ${SHELLANYTHING_INSTALL_LIB_DIR}) # CMake files (*.cmake) should have the same destination as the library files. Some also prefers to use "cmake".
*_Hint_*: you can use Windows own icons to assign your <icon> with familiar Windows icons.
690
-
The following links shows a visual representation and the index of each icons:
691
-
*[Windows 7 icons in shell32.dll](https://help4windows.com/windows_7_shell32_dll.shtml)
692
-
*[Windows 7 icons in imageres.dll](https://help4windows.com/windows_7_imageres_dll.shtml)
693
-
*[Windows 8 icons in shell32.dll](https://help4windows.com/windows_8_shell32_dll.shtml)
694
-
*[Windows 8 icons in imageres.dll](https://help4windows.com/windows_8_imageres_dll.shtml)
695
-
*[Windows 10 icons in shell32.dll](https://help4windows.com/)
696
-
*[Windows 10 icons in imageres.dll](https://help4windows.com/)
697
-
689
+
*_Hint_*: Windows have a variety of built-in icons available. You can assign a Windows built-in icons to an <icon> to give a familiar Windows looks and feel to your menus. See the [Windows icons preview](#windows-icons-preview) section in Tools for more details.
698
690
699
691
700
692
@@ -714,6 +706,9 @@ The application support multiple types of actions. The list of each specific act
714
706
715
707
The <exec> element is used to launch an application. The <exec> element must be added under the <actions> element.
716
708
709
+
**Note:**
710
+
When a process is created, ShellAnything will set property `process.id` to the process id of the new launched application.
711
+
717
712
The <exec> elements have the following attributes:
718
713
719
714
@@ -762,7 +757,7 @@ For example, the following launch `cmd.exe` and list files and directories recur
762
757
```
763
758
764
759
**Note:**
765
-
It is recommanded to use the `wait` attribute with the `timeout` attribute. Without a _timeout_ value, ShellAnything will wait indefinitely until the launched process exits. This can result in system instability. If the launced process freezes, pauses or never exists, it will lock _ShellAnything_ and _File Explorer_.
760
+
It is recommanded to use the `wait` attribute with the `timeout` attribute. Without a _timeout_ value, ShellAnything will wait indefinitely until the launched process exits. This can result in system instability. If the launced process freezes, pauses or never exists, it will lock _ShellAnything_ and _File Explorer_ forever.
766
761
767
762
When combined with other elements, the `wait` attribute allows advanced use case.
768
763
@@ -781,6 +776,7 @@ Tell ShellAnything to wait until the search is complete before proceeding to the
781
776
782
777
783
778
779
+
784
780
#### timeout attribute: ####
785
781
786
782
The `timeout` attribute defines the maximum time to wait in seconds with the `wait` attribute. If the running process fails to exit before the _timeout_ value, a warning is logged and the next actions of the menu are not executed. The value must be numerical. The attribute is optional.
@@ -792,6 +788,34 @@ For example, the following launch `cmd.exe` and list files and directories recur
792
788
793
789
794
790
791
+
#### console attribute: ####
792
+
793
+
The `console` attribute defines how we should display the main window of the launched application. The attribute allow console applications to be launched without a console. The feature is particularly useful for running background tasks. The attribute must be set to a value that evaluates to `false` to enable the feature. See [istrue attribute](https://github.com/end2endzone/ShellAnything/blob/master/UserManual.md#istrue-attribute) or [isfalse attribute](https://github.com/end2endzone/ShellAnything/blob/master/UserManual.md#isfalse-attribute) logic for details. The attribute is optional.
794
+
795
+
For example, the following will launch ImageMagick `magick.exe` command line application to convert webp images to jpg :
The conversion to JPEG format will be performed without showing a console and no window flickering will be visible.
800
+
801
+
**Note:**
802
+
* The _console_ attribute may also affects windowed applications and may hide their main graphical user interface.
803
+
* Users must be careful when launching background applications (hidden applications). A background application should not wait for user input or it may never complete/terminate gracefully. Background tasks can also cause system instability if the `wait` attribute is also set and the background process freezes, pauses or never exists because it will lock _ShellAnything_ and _File Explorer_ forever.
804
+
805
+
806
+
807
+
#### pid attribute: ####
808
+
809
+
The `pid` attribute defines the name of the property to set with the new launch process id.
810
+
811
+
For example, the following will sets the property `mspaint.process.id` to the process id of `mspaint.exe` :
The target property is left untouched if the process cannot be launched.
817
+
818
+
795
819
#### verb attribute: ####
796
820
797
821
The `verb` attribute defines special directives on how to execute a file or launching the application. For example, the verb `open` or `edit` allows the user to open a document using the associated application. The attribute is optional.
@@ -1750,16 +1774,18 @@ The application defines a list of properties about the current runtime. The valu
1750
1774
1751
1775
The following table defines the list of fixed properties and their utility:
| application.path | Matches the full path of the shell extension DLL. |
1780
+
| application.directory | Matches the directory of the shell extension. |
1781
+
| application.install.directory | Matches the directory where ShellAnything is installed. |
1782
+
| application.version | Matches ShellAnything current version. |
1783
+
| log.directory | Matches the directory where the logs are created. |
1784
+
| config.directory | Matches the directory of the configuration files. |
1785
+
| home.directory | Matches the home directory of the current user. |
1786
+
| path.separator | Matches the `\` character. |
1787
+
| line.separator | Matches the `\r\n` string. |
1788
+
| newline | Matches the `\r\n` string. Same as `${line.separator}`. |
1763
1789
1764
1790
1765
1791
Fixed properties are encoded in utf-8.
@@ -1873,6 +1899,29 @@ argv[33]=Ψψ
1873
1899
argv[34]=Ωω.
1874
1900
```
1875
1901
1902
+
1903
+
1904
+
### Windows icons preview images ###
1905
+
1906
+
Windows have a variety of built-in icons available. You can assign a Windows built-in icons to an <icon> to give a familiar Windows looks and feel to your menus. ShellAnything has preview images of the icons in most Windows dll. It allows one to quickly identify the file and the index of a desired icon.
1907
+
1908
+
The following images show all icons within popular Windows dll files:
0 commit comments