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


HSPTV!掲示板


未解決 解決 停止 削除要請

2007
0428
ellerxdimモジュールのHSP3への翻訳2解決


eller

リンク

2007/4/28(Sat) 21:59:40|NO.7825

こんにちは、ellerと申します。
今回はWin32APIの利用についてご教授頂きたく思い、書き込ませていただきました。

さて、ちょくとさんのページで公開されているHSP2.6向けモジュール"xdim.as"
http://yokohama.cool.ne.jp/chokuto/urawaza/mcn/intro.html
をHSP3に翻訳したいと思いやってみたのですが、あまり経験がないため結果に自信が持てません。
失敗できない領域ですし、知識のある皆さんに添削していただければ心強いと思い、
結果を以下に転記させていただきます。
誤っている点や改善すべき点があればご指摘お願いいたします。

#ifndef xdim
#module "xdimModule" #deffunc __xdim val v1, int p2 prm = varptr(v1), p2*4, $40 ret = callfunc(prm, fnVP, 4) return #define global xdim(%1,%2) dim %1,%2 : __xdim %1,%2 #global #ifndef VirtualProtect #uselib "kernel32.dll" #func global VirtualProtect "VirtualProtect" sptr,sptr,sptr,sptr #endif // モジュール内変数の初期化 dim hdll@xdimModule, 7 dup fnVP@xdimModule, hdll@xdimModule(1) dup prm@xdimModule, hdll@xdimModule(2) prm@xdimModule(3) = varptr(prm@xdimModule(4)) fnVP@xdimModule = varptr(VirtualProtect) #endif ; !defined (xdimModule)

【主な変更点】
・モジュール名と関数名が重複していたのを修正
・llmod.as系命令をHSP3標準命令に書き換え



この記事に返信する


Kpan

リンク

2007/4/28(Sat) 22:54:24|NO.7829

HSP Help Centerさんのとこに、移植版コードがあります。
http://smile.poosan.net/perl-bin/hsp/ver3/hsp3.cgi?print+200509/05090015.txt



eller

リンク

2007/4/29(Sun) 05:23:56|NO.7834

>Kpan さん
ありがとうございます。HSP Help Centerさんはあまり見ないので、盲点でした...。
HSP3ならかなり簡単なコード(3行!?)に置き換えられるのですね。
勉強になりました。
重複いたしますが、ありがとうございました。



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