Pythonのお勉強 Part30
at TECH
656:デフォルトの名無しさん
08/12/21 10:42:57
comtypesをインストールして、以下のようにコードを書きました。
from ctypes import cast, POINTER
from comtypes.client import CreateObject
import os
wshell = CreateObject('WScript.Shell')
shell = CreateObject('Shell.Application')
from comtypes.gen.Shell32 import Folder2, ssfNETHOOD
from comtypes.gen.IWshRuntimeLibrary import IWshShortcut
nethood = cast(shell.NameSpace(ssfNETHOOD), POINTER(Folder2)).Self.Path
#nethood = wshell.SpecialFolders('NetHood')
link = cast(wshell.CreateShortcut('%s.lnk' % os.path.join(nethood, 'TEST')),
POINTER(IWshShortcut))
link.TargetPath = 'fURLリンク(localhost)'
link.Save()
5, 6行目でCOMオブジェクトを作るとcomtypes.genパッケージの下にそれらしい名前で
.pyと.pycが作られるので、これらを8, 9行目でインポートしています。
注意しないといけないのは、11, 13行目でやっているように、オブジェクトを
適宜明示的にダウンキャストしてやる必要があるということです。
このあたりの詳しい説明は、ここにありました。
URLリンク(aspn.activestate.com)
Pythonwinではこのようなキャストは必要ないので少々面倒な気がしますが、
選択肢が多くあるのは良いことです。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5092日前に更新/206 KB
担当:undef