HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2012
0507
chau起動中のソフトにファイルを開かせる方法1解決


chau

リンク

2012/5/7(Mon) 11:29:05|NO.46495

abc/123.jpg というファイルをマンガミーヤで見ているときに
マンガミーヤの「外部プログラムで開く」機能を使ってhspを呼び出して、
hspに「今起動中のマンガミーヤにc:\abcを開かせて、hspは終了」という動作をさせたいと思っています。

#include "mod_regexp.as" user=str(submatch(dir_cmdline,".*\\\\(.*?)/")) exec "MangaMeeya.exe C:\\"+user
というコードでそれっぽいことができるんですが、これだとマンガミーヤが多重起動してしまうし
hspを終了すると呼び出されたマンガミーヤも一緒に終了してしまいます。
exec "MangaMeeya.exe C:\\"+user,16 だと呼び出しエラーが起こります。
目的の動作を実装するにはどうすればいいでしょうか?
あと、「マンガミーヤを多重起動させて、ファイルを開かせて、hspだけ終了」する方法もついでに教えてもらえれば幸いです。



この記事に返信する


chau

リンク

2012/5/9(Wed) 10:57:17|NO.46546

とりあえず自己解決しました。
WSHのRunメソッドで起動させれば、hspにつられて終了しなくなるようです。

問題は解決済みとしますが、
「起動中のソフトにファイルを開かせる」(ドラッグ&ドロップを再現する)方法は引き続き募集します。
ご存知の方がおられましたらこのスレッドへの回答をお願いします。


#include "mod_regexp.as" #uselib "user32" #func mouse_event "mouse_event" int, int, int, int newcom wsh,"WScript.Shell" screen 0,100,100,0,800,0 user=str(submatch(dir_cmdline,".*\\\\(.*?)/")) mouse 50,50 : mouse_event $6 ;※この部分はAppActivateを使った方がいいのですが、 wsh->"SendKeys" "%{F4}" ;マンガミーヤはタイトルに特定の文字が出現しないので今回はこの命令で代用しました。 wsh->"Run" "MangaMeeya.exe C:\\"+user delcom wsh end



ONION software Copyright 1997-2021(c) All rights reserved.