Многие ОЕМ-сборщики компьютеров добавляют свой ярлык в меню "Пуск" под ярлыком команды "Выполнить". Ярлык может указывать на файл, содержащий сведения о технической поддержке, или на веб-сайт компании-сборщика компьютера. В соответствии с документацией Microsoft такой ярлык можно создать только в рамках фабричной установки посредством файла winbom.inf, а созданный таким образом ярлык невозможно удалить. Участник конференции OSzone Boa Soft успешно опровегает это заявление с помощью INF-файла, приведенного ниже.
factory.inf
[Version] signature = $CHICAGO$ SetupClass=BASE [DefaultInstall] AddReg = FLink.AddReg [FLink.AddReg] HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}",,0x00000000,%LinkName% HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}","InfoTip",0x00000000,%LinkTip% HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\DefaultIcon",,0x00020000,%IconName% HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\InProcServer32",,0x00020000,"%SystemRoot%\system32\shdocvw.dll" HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\InProcServer32","ThreadingModel",0x00000000,"Apartment" HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\Instance","CLSID",0x00000000,"{3f454f0e-42ae-4d7c-8ea3-328250d6e272}" HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\Instance\InitPropertyBag","CLSID",0x00000000,"{13709620-C279-11CE-A49E-444553540000}" HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\Instance\InitPropertyBag","method",0x00000000,"ShellExecute" HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\Instance\InitPropertyBag","Command",0x00000000,%LinkName% HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\Instance\InitPropertyBag","Param1",0x00020000,%FileName% HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\shellex\ContextMenuHandlers\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}", HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\shellex\ContextMenuHandlers\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}",,0x00000000,"" HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\shellex\MayChangeDefaultMenu",,0x00000000,"" HKCR,"CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\ShellFolder","Attributes",0x00010001,0 HKCU,"Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Cached","{2559A1F6-21D7-11D4-BDAF-00C04F60B9F0} {00000000-0000-0000-C000-000000000046} 0x401",0x00000001, 01,00,00,00,39,00,34,00,28,38,37,b0,1d,53,c8,01 HKCU,"Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Cached","{2559A1F6-21D7-11D4-BDAF-00C04F60B9F0} {000214E8-0000-0000-C000-000000000046} 0x401",0x00000001, 01,00,00,00,39,00,34,00,ea,23,43,b0,1d,53,c8,01 HKCU,"Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Cached","{2559A1F6-21D7-11D4-BDAF-00C04F60B9F0} {000214E6-0000-0000-C000-000000000046} 0x401",0x00000001, 00,00,00,00,39,00,34,00,28,ec,fb,b4,1d,53,c8,01 HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StartMenu\StartPanel\ShowOEMLink","NoOEMLinkInstalled",0x00010001,0 HKCU,"Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced","Start_ShowOEMLink",0x00010001,1 [STRINGS] ;Имя ярлыка LinkName = "Форум OSzone.net" ;Всплывающая подсказка к ярлыку LinkTip = "Ответ обязательно найдется!" ;Полный путь к значку IconName = "C:\WINDOWS\OEM\oszone.ico" ;Полный путь к файлу или URL FileName = "http://forum.oszone.net"
В разделе [Strings] необходимо указать собственные параметры. Запустить INF-файл из командной строки (с помощью cmdlines.txt или [GuiRunOnce]) можно так:
RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultInstall 128 <полный путь к inf-файлу>\factory.inf
В пути, как всегда, избегайте пробелов и спецсимволов, иначе придется заключать путь с именем в кавычки. Не забывайте, что в cmdlines.txt переменные окружения не поддерживаются.
Особенностью этого INF-файла является то, что отображение ярлыка можно отключить в настройках меню "Пуск", сняв флажок Ссылка на изготовителя (Manufacturer Link).
Архив, содержащий файлы, использовавшиеся для создания ярлыка на скриншоте выше, можно загрузить по прямой ссылке.