EXTENSIBLE все-таки относится к процедуре New, которая является методом записи HostWindows.Directory и говорит, о том, что этот метод возможно расширить.

Но, когда я прочитал ваш комментарий, то внезапно понял, что у Directory то как раз нету скрытых полей!!!, так что проблема решается примерно так!

## Код:
```
TYPE
   Directory* = POINTER TO RECORD (HostWindows.Directory)
      parent: HostWindows.Directory;
   END;

PROCEDURE (d: Directory) New*(): HostWindows.Window;
   VAR w: HostWindows.Window; res: INTEGER; title: ARRAY 128 OF CHAR; a: AddWindowAction;
BEGIN
   w := d.parent.New();
   NEW(a); a.w := w;
   Services.DoLater(a, Services.now);
   RETURN w
END New;

PROCEDURE Install*;
   VAR tab: Tab; area: Area; dir: Directory;
BEGIN
   IF dlg.b = NIL THEN
   
      NEW(dir);
      dir.parent := HostWindows.dir;
      dir.unit := HostWindows.dir.unit;
      dir.invisible := HostWindows.dir.invisible;
      dir.unmoveable := HostWindows.dir.unmoveable;
      dir.background := HostWindows.dir.background;
      dir.l := HostWindows.dir.l;
      dir.t := HostWindows.dir.t;
      dir.r := HostWindows.dir.r;
      dir.b := HostWindows.dir.b;
      dir.minimized := HostWindows.dir.minimized;
      dir.maximized := HostWindows.dir.maximized;
      Windows.SetDir(dir);

...
```


Минутка самоиронии:
«Спрашивают четырех индейцев, убежавших из тюрьмы:
- Скажите, почему вы убежали?
- Сидим мы день, второй, третий. На четвертый день Острый Глаз заметил, что одной стены нет.»