The .url format is not officially documented (the NSIS wiki’s
Create Internet Shortcut page notes that Microsoft documents only the
IUniformResourceLocator interface for making these files). It is INI-style
text, each line ending in CR LF, in the ANSI character set (Cyanwerks). What is known
comes from study of the files; this page follows Cyanwerks’ URL file format
notes and the Orangevolt ANT Tasks’ .url format chapter, and says where they
disagree. Only URL is required (NSIS).
[InternetShortcut]
| Key | Value |
|---|---|
URL | The address of the page to load. |
WorkingDirectory | A working folder; Cyanwerks found Internet Explorer does not seem to be affected by it, and it does not appear in some versions. |
ShowCommand | The window state: absent for normal, 3 maximised, 7 minimised (Orangevolt). These match Windows’ ShowWindow values SW_SHOWMAXIMIZED (3) and SW_SHOWMINNOACTIVE (7). Cyanwerks’ table instead gives 7 for normal and 3 for minimised, and no maximised value. Not written by some versions. |
IconFile | The path of the icon library; by default URL.DLL in the Windows System folder (Orangevolt). |
IconIndex | The icon’s index in IconFile, starting at 0. |
HotKey | The shortcut key that opens it, as a number; see hot keys. |
Modified | A timestamp; see timestamps. |
Other sections
| Section | Keys |
|---|---|
[DEFAULT] | BASEURL, written sometimes when the shortcut is saved as a Favourite. |
[DOC#n#n…] | BASEURL and ORIGURL, which help the browser work out which documents were loaded in each frame. |
Other keys and sections, such as Roamed, IDList or a
section named by a GUID, can occur in files but are not described by any source read
for this page; their meaning is unknown here.
Hot keys
Both sources give these examples:
| Value | Hex | Keys |
|---|---|---|
| 833 | 0x341 | Ctrl + Shift + A |
| 1345 | 0x541 | Shift + Alt + A |
| 1601 | 0x641 | Ctrl + Alt + A |
In hex the low byte is 0x41, the key A, and the high byte the
modifiers, as in the hot key control’s value (Microsoft, HKM_GETHOTKEY:
low byte the virtual key code, high byte the modifier flags). The three examples
work out to Shift 1, Ctrl 2 and Alt 4, added together.
Timestamps
Modified is hex digits, such as 20F06BA06D07BD014D
(Orangevolt’s example): Cyanwerks reads the first 8 bytes as a Windows FILETIME whose
byte order must be reversed before use, and the last byte as a checksum that can be
ignored.
Example
[InternetShortcut]
URL=https://fileformats.org/
IconFile=C:\Windows\System32\url.dll
IconIndex=0
HotKey=833