全然更新しないブログ
HSPメモ帳
#use
引用元:doclib\history.txt
- Hot Soup Processor ver3.7beta
- 2023/10/18 3.7 beta7
- 追加のスクリプトファイルを簡易指定するためのプリプロセッサ命令、#useを追加
スクリプトファイルの追加
スクリプトファイルの追加方法は、下記の3種類があります。
- #include "filename"
- 文字列で指定したファイルを追加します。
ヘルプには書かれていないので非推奨ですが、名称で指定することもできます。 その場合、.拡張子を省略します。また、asファイルのみ指定可能です。
例)#include user32 // #include "user32.as" と同じ - #addition "filename"
- #include と同じですがfilenameが存在しない場合でも、エラーとして停止せずに続行されます。
- #use name,...
- 名称で指定したファイルを追加します。
名称は、""で括らず、ファイル名の.拡張子は省略する必要があります。
, で区切ることで複数指定できます。
指定できるファイル名の拡張子は、asのみです。
例)#use user32, kernel32
OpenHSPの最新のソースコードを見ると 拡張子hspも指定可能になるようです。優先順位は、1:as 2:hspです。
テスト 検索パス
'HSPエディタ' で 'テスト用ソースコード' を、コンパイル+実行(F5)した時の検索パスを見てみます。
このテストでは、全ての検索パスを取得するために、存在しないdummy.asを指定しています。
下記を環境例とします。
hspcmp.dllは、OpenHSPのhspcmp@1431をdebugしたものを使用。
1) #include ファイル名
2) #use ファイル名
3) #include 絶対パス名
4) #include 相対パス名
5) #include 相対パス名 + #include 相対パス名
このテストでは、全ての検索パスを取得するために、存在しないdummy.asを指定しています。
下記を環境例とします。
hspcmp.dllは、OpenHSPのhspcmp@1431をdebugしたものを使用。
HSP バージョン | ver3.7beta |
HSPエディタ | c:\hsp\hsed3le.exe |
hspcmp.dll | c:\hsp\hspcmp.dll |
commonディレクトリ | c:\hsp\common\ |
テスト用ソースコード | d:\test\test.hsp |
テスト用ディレクトリ | d:\test\src |
テスト用ソースコード | d:\test\src\src.hsp |
1) #include ファイル名
d:\test\test.hsp
#include "dummy.as" // 存在しないファイルを指定
- 検索パス - d:\test\dummy.as
- d:\test\dummy.as
- c:\hsp\common\dummy.as
- d:\test\dummy.as
- c:\hsp\common\dummy.as
2) #use ファイル名
d:\test\test.hsp
#use dummy // 存在しないファイルを指定
- 検索パス - d:\test\dummy.as
- d:\test\dummy.as
- c:\hsp\common\dummy.as
- d:\test\dummy.as
- c:\hsp\common\dummy.as
- d:\test\dummy.hsp
- c:\hsp\common\dummy.hsp
- d:\test\dummy.hsp
- c:\hsp\common\dummy.hsp
3) #include 絶対パス名
#useは、絶対パスを指定できません。
d:\test\test.hsp
d:\test\test.hsp
#include "d:\\test\\dummy.as" // 存在しないファイルを指定
- 検索パス - d:\test\dummy.as
- d:\test\dummy.as
- c:\hsp\common\dummy.as
- d:\test\dummy.as
- c:\hsp\common\d:\test\dummy.as
4) #include 相対パス名
#useは、相対パスを指定できません。
d:\test\test.hsp
d:\test\test.hsp
#include "src\\dummy.as" // 存在しないファイルを指定
- 検索パス - d:\test\src\dummy.as
- d:\test\src\dummy.as
- c:\hsp\common\dummy.as
- d:\test\src\dummy.as
- c:\hsp\common\src\dummy.as
5) #include 相対パス名 + #include 相対パス名
#useは、相対パスを指定できません。
d:\test\test.hsp
d:\test\src\src.hsp
d:\test\src\dummyディレクトリを作成して、
d:\test\src\dummy\dummy.asファイルを作成した場合、
src.hsp 単体のコンパイルは成功します。
ですが、test.hsp のコンパイルは失敗しました。
(#スクリプトファイルが見つかりません [dummy.as])
注意:バグの可能性あり。
d:\test\test.hsp
#include "src\\src.hsp"
#include "dummy\\dummy.as" // 存在しないディレクトリとファイルを指定
- 検索パス - d:\test\src\dummy\dummy.as
- d:\test\dummy\dummy.as
- c:\hsp\common\dummy.as
- d:\test\dummy\dummy.as
- c:\hsp\common\dummy\dummy.as
d:\test\src\dummyディレクトリを作成して、
d:\test\src\dummy\dummy.asファイルを作成した場合、
src.hsp 単体のコンパイルは成功します。
ですが、test.hsp のコンパイルは失敗しました。
(#スクリプトファイルが見つかりません [dummy.as])
注意:バグの可能性あり。
プリプロセッサファイル出力
注意:インクルードで相対パスを指定した場合、
プリプロセッサファイル出力のインクルードファイル名
が間違っている場合があります。
コメント ( 0 ) | Trackback ( 0 )
« wv2s.dll - 3 |
コメント |
コメントはありません。 |
コメントを投稿する |