Задать вопрос
@Ozzzzi

Как дописать параметр запуска ярлыка через программу?

Здравствуйте!

Скажем, есть ярлык (*.lnk):
[oбъект: "C:\Games\Counter-Strike\hl.exe"]

Запускаем программу, находит этот файл(*.lnk) и изменяет:

[объект: "C:\Games\Counter-Strike\hl.exe" - game cstike]

В общем, подскажите код на С++.
  • Вопрос задан
  • 3795 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Stepik
    Внутреннее устройство контейнеров в STL (C++)
    2 недели
    Далее
  • Skillbox
    Разработчик на C++
    7 месяцев
    Далее
Решения вопроса 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
Примерно так на голом COM:
IPersistFile *ipf;
  IShellLinkA *isl;
  HRESULT rc;

  rc=CoInitialize(NULL);
  rc=CoCreateInstance(CLSID_ShellLink,0,CLSCTX_INPROC_SERVER,IID_IPersistFile,(void**)&ipf);
  rc=ipf->Load(L"something.lnk",0);
  rc=ipf->QueryInterface(IID_IShellLinkA,(void**)&isl);
  rc=isl->SetArguments("- game cstike");
  rc=ipf->Save(L"something.lnk",1);
  ipf->Release();
  isl->Release();
  CoUninitialize();


По деталям интерфейса IShellLink см. msdn.microsoft.com/en-us/library/windows/desktop/b...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы