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


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
0318
vineDLLの使用方法4解決


vine

リンク

2009/3/18(Wed) 10:12:31|NO.23969

こんにちは。

http://www.vector.co.jp/soft/winnt/prog/se360206.html
のDLLを使用したいのですが、C++とVBのサンプルしかないため
「HSPでの、DLL宣言と使用方法」を教えていただけないでしょうか。

↓調べてみたものの、わかりませんでした

#uselib "AppKiller.dll"
#func AppKiller "AppKiller" 0
AppKiller "iexplore.exe",""



この記事に返信する


SYAM

リンク

2009/3/18(Wed) 10:44:31|NO.23970

(#func のヘルプと一緒に以下を読んでくださいね)
#func に指定している「関数名」が間違っていますし、「タイプ名」に 0 を指定しているのも明らかに間違いです。

「関数名」というのは HSPの用語ではなく Cなどでいう「関数」の名前です。このDLLのアーカイブでは、Export.h というファイルの中にこのDLLが提供する関数の名前や与えるべき引数の型が書かれているようですね。
「タイプ名」というのは、Cなどでいう「型」を表すものです。#funcのヘルプに詳しく書かれています。

しかし、そもそもCやVB向けに提供されているDLLのようですから、CやVBがまったくわからないまま扱うことはお勧めできません。まして、このような他のプログラムに影響を与えるものとなると尚更です。
せめてCやVBの「関数」と「型」についてちょっと勉強してみてください。さもないと、今後も何かDLLを使おうとするたびに同じ質問しなきゃいけなくなります。


このDLLの関数をHSPからコールして、別のプログラムを終了させることは実際にできました。
無駄にはなりませんから、どうかがんばってみてください。



vine

リンク

2009/3/18(Wed) 12:19:28|NO.23971

ヒントをありがとうございます!
できました。

#uselib "AppKiller.dll"
#func KillAPP "KillAPP" str,str
KillAPP "iexplore.exe",""



レノス

リンク

2009/3/18(Wed) 20:41:22|NO.23978

間違っています。

#uselib "AppKiller.dll" #func KillAPP "KillAPP" sptr,sptr
使わない方の引数には NULL(0) を指定する必要があるので、(VC_TEST参照)
str ではなく sptr を使ってください。



vine

リンク

2009/3/18(Wed) 21:13:04|NO.23979

あ、はい
ご指摘ありがとうございます



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