Роботы, плагины и скрипты к чату MyChat. Разработка альтернативных клиентов и различных утилит. Технические вопросы по программированию, замечания и предложения по развитию API
brodya
Ещё один вопрос остался: в vnc плагине, в самом архиве, отдельно лежит папка с UltraVNC. Как плагину указать, что необходимо подгружать внешний файл находящийся в zip-архиве? Пробовал указывать файл без указания пути, но тогда плагин ищет его в каталоге в котором находится zip-архив.
Аватара пользователя
Алексей Пикуров
Я отделил ваше сообщение. Один вопрос - одна тема.

Вам нужно выполнить
Код: Выделить всё
mcGetDataFromMyChat(MCC_Get_PluginFolder, '');

чтобы узнать папку, где запущен плагин, а затем уже по относительному пути вы сможете сделать ShellExecute или что-то в этом духе.
brodya
Код: Выделить всё
mcGetDataFromMyChat(MCC_Get_PluginFolder, '');

Что нужно передавать параметром?
mcGetDataFromMyChat(MCC_Get_PluginFolder, 'MyPlugin'); ничего не возвращает
mcGetDataFromMyChat(MCC_Get_PluginFolder, ''); Происходит "разрушительный сбой"
Аватара пользователя
Алексей Пикуров
Параметром передаётся JSON объект с указанием имени плагина, путь к которому нужно получить, простите, не указал это в своём ответе ранее.
Пример:
Код: Выделить всё
var
  s_path, st: string;
  JSONobj: ISuperObject;
begin
  st := mcGetDataFromMyChat(MCC_Get_PluginFolder, '{"Name":"' + pluginName+ '"}');

  JSONobj   := TSuperObject.ParseString(StringToOleStr(st), false);

  s_path := JSONobj.S['Folder'] + 'vnccl\';

  JSONobj.Clear(true);
  JSONobj := nil;
......