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


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
0811
ANTARESHSP2.61仕様のDLLのエラーメッセージ16解決


ANTARES

リンク

2009/8/11(Tue) 09:41:51|NO.26989

 HSP2.61仕様のDLLの文字変数を指定すべきところに
無宣言未使用の変数を指定すると、ヘルプに
「外部DLLの関数呼び出しの先のアドレス取得に失敗した場合に表示されます」
と書かれているエラーが起きますが、これは仕様でしょうか?



この記事に返信する


ANTARES

リンク

2009/8/11(Tue) 12:51:01|NO.26999

 すみません。
エラーが出るというのは勘違いか、3.1のβ版だったようです。
正常動作しないのはhsp2の頃からでした。



ANTARES

リンク

2009/8/11(Tue) 12:52:16|NO.27000

 解決チェック



ANTARES

リンク

2009/8/11(Tue) 15:14:14|NO.27003

>正常動作しないのはhsp2の頃からでした。
 サンプルとしてhspextの命令を使おうとしたのでこういう結論に
なりましたが、違いました。

 拙作anthspex.dllを使う以下のスクリプトはhsp2.61で正常動作します。
(「7F」と表示されます)

#include "anthspex.as" c=127 astr s,c,18 mes s stop
 ところが、以下のスクリプトをhsp3.1で正常動作させるには
セミコロンを削除する必要があります。

#include "anthspex3.as" c=127 ;s="" astr s,c,18 mes s stop
 これは、
>PVal構造体のflagフィールド(型タイプ値)や
>lenフィールド(配列情報)を DLL側で書き換えることはできません。
という仕様変更によるものですが、賢い命令を
hspext並のバカ命令に変えるなんてほとんどDLL作者とユーザーに
対する嫌がらせとしか思えませんね。



ANTARES

リンク

2009/8/11(Tue) 18:28:23|NO.27007

 やはり、エラーが出る場合もあるようです。

#include "anthspex3.as" title "strget命令のサンプル" ;s="" sc s,"0123456789"



おにたま(管理人)

リンク

2009/8/15(Sat) 21:50:09|NO.27085

仕様です。
HSP2.61仕様のDLLをできる限り利用できるようにしたいとは考えていますが、
変数の型情報と配列メモリ確保の方法が異なるため、変数の挙動に関してだけは
HSP3以降の仕様に従って作成してもらえればと思います。



ANTARES

リンク

2009/8/16(Sun) 12:27:30|NO.27108

 了解しました。



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