Когда-то давно мы с вами использовали Delphi, чтобы запросить информацию из объекта ShellWindows, и нашли этот способ прямолинейным, но запутанным.
Это выглядит несколько неуклюже в native-языках, т.к. объект ShellWindows был спроектирован для использования в скриптовых языках типа JScript или Visual Basic.Давайте используем один из языков, для которых проектировался объект ShellWindows, чтобы перечислить все открытые окна оболочки. Запустите этот файл из командной строки командой
cscript sample.js
:var shellWindows = new ActiveXObject("Shell.Application").Windows(); for (var i = 0; i < shellWindows.Count; i++) { var w = shellWindows.Item(i); WScript.StdOut.WriteLine(w.LocationName + "=" + w.LocationURL); }Ну, это было намного короче, не так ли?
Хе. На дельфи точно так же можно использовать позднее связывание и тогда кода будет столько же.
ОтветитьУдалитьВы можете написать пост на эту тему и отправить его мне для публикации в блоге ;)
ОтветитьУдалить