SetFarInfo

Вызывается, когда модуль плагина второго уровня загружен и MultiArc передает плагину указатель на структуру PluginStartupInfo. Эта функция дополнительная и может быть опущена.
void  WINAPI SetFarInfo(
  const struct PluginStartupInfo *Info
);

Параметры

Info
указатель на структуру PluginStartupInfo

Возвращаемое значение

Нет.

Примечание

  1. Функция вызывается один раз сразу после вызова функции LoadFormatModule, после чего плагин второго уровня будет знать о FAR Manager столько же, сколько и сам плагин MultiArc (плюс небольшая добавка от самого MultiArc).
  2. Указатель Info действителен только в области видимости данной функции (до выхода из функции), так что структура должна копироваться во внутреннюю переменную плагина второго уровня для дальнейшего использования:
    static struct PluginStartupInfo Info;
    ...
    void WINAPI _export SetStartupInfo(const struct PluginStartupInfo *Info)
    {
      ::Info=*Info;
      ...
    }
    
  3. Если в плагине используются "стандартные функции" из структуры FarStandardFunctions, то член PluginStartupInfo.FSF так же должен быть сохранен в локальное пространство плагина второго уровня:
    static struct PluginStartupInfo Info;
    static struct FarStandardFunctions FSF;
    
    void  _export SetStartupInfo(struct PluginStartupInfo *psInfo)
    {
        Info=*psInfo;
        FSF=*psInfo->FSF;
        Info.FSF=&FSF; // скорректируем адрес в локальной структуре
        ...
    } 
Смотрите также:
поддержка архивов, PluginStartupInfo