SetStartupInfo

Функция SetStartupInfo вызывается один раз, после загрузки DLL-модуля в память. FAR передает плагину информацию, необходимую для дальнейшей работы.
void WINAPI SetStartupInfo(
  const struct PluginStartupInfo *Info
);

Параметры

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

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

Нет.

Замечания

  1. В FAR Manager 1.65 и ниже эта функция вызывается первой, сразу после загрузки DLL-модуля.
  2. В FAR Manager 1.70 и выше эта функция вызывается после вызова функции GetMinFarVersion.
  3. Указатель Info действителен только в области видимости данной функции (до выхода из функции), так что структура должна копироваться во внутреннюю переменную плагина для дальнейшего использования:
    static struct PluginStartupInfo Info;
    ...
    void WINAPI _export SetStartupInfo(const struct PluginStartupInfo *Info)
    {
      ::Info=*Info;
      ...
    }
    
  4. Если в плагине используются "стандартные функции" из структуры 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; // скорректируем адрес в локальной структуре
        ...
    }