Windows10でも VBScript で Win32API を使いたくて探したら、
CX's Hello, World! » Hello, Win32 API(VBScript) World!
http://cx20.main.jp/blog/hello/2012/04/20/hello-win32-api-vbscript-world/
のソースコード(VBScript + COM + DynamicWrapper + Win32 API)を動かせた!
まず、
glsft.free.fr - DynaWrap - DynaCall Wrapper
http://glsft.free.fr/index.php?option=content&task=view&id=47
のDynaWrap.zip をダウンロードして、
次に、
PHPでWin32APIを呼ぶ(Windows) - Qiita
https://qiita.com/joh/items/9f54c68768e356c51157
の「DynamicWrapper をインストール」参考に
解凍した DynaWrap.dll があるフォルダで、管理者権限cmdで
regsvr32.exe dynwrap.dll
でインストールできた。
cscript だと
Windows 7(x64)でVBScriptからCreateObjectすると800A01ADエラーなったので、
https://www.majishini.net/hg/post/2013/20130601-021/
の通り、コマンドを32bit版cscriptに変えて動かしたらOKだった。
%SystemRoot%\SysWow64\cscript.exe (注1).vbs
(注1)は
(VBScript + COM + DynamicWrapper + Win32 API)のソース。
下記の通り、Win32APIなので、
ウインドウが表示される。
ちなみに、
regeditで「DynamicWrapper」を検索すると、
コンピューター\HKEY_CLASSES_ROOT\DynamicWrapper
などが登録されていることを確認できた。
また、VBScript でCreateObjectする
"Scripting.FileSystemObject"もレジストリに登録されている。
結局、レジストリに名前を登録して、
それに対応した処理が何らかの仕組み(たぶん、プログラムのパス等)で登録されているのだろう。
以上です。#####