設定ファイルから値を取得する方法について
- このフォーラムに新しいトピックを立てることはできません
- このフォーラムではゲスト投稿が禁止されています
yone
投稿数: 30
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
nullさん こんにちは
Get.dllが使用可能であれば、
UDF('get.finiget','foge.ini','FOO','BAR')という形で
値の取得が可能だと思います。
Get.dllが使用可能であれば、
UDF('get.finiget','foge.ini','FOO','BAR')という形で
値の取得が可能だと思います。
投票数:0
平均点:0.00
null
投稿数: 191
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
追加で回答していただいた yoshi さん、y-sakamoto さん、 Jiro123 さん、ありがとうございます。
> @ で指定する設定ファイルの書式はコマンドラインの書式と同等です。
なるほど。@ 指定にはそう言う仕様があるのですね。
本来の質問とはだいぶズレてしまいましたが、自分が作成する ini ファイルを INIGet() を使用して
読込む場合はコマンドラインの形式と同等のフォーマットにしたいと思います。
何となく無さそうなので、UDF を書いた方が手っ取り早い気もするのですが、
それ以外の一般的な ini ファイルに関しては、上記仕様がある以上、
INIGet() は使えないので、他の方法が無いかもう暫く探したいと思います。
> @ で指定する設定ファイルの書式はコマンドラインの書式と同等です。
なるほど。@ 指定にはそう言う仕様があるのですね。
本来の質問とはだいぶズレてしまいましたが、自分が作成する ini ファイルを INIGet() を使用して
読込む場合はコマンドラインの形式と同等のフォーマットにしたいと思います。
何となく無さそうなので、UDF を書いた方が手っ取り早い気もするのですが、
それ以外の一般的な ini ファイルに関しては、上記仕様がある以上、
INIGet() は使えないので、他の方法が無いかもう暫く探したいと思います。
投票数:0
平均点:0.00
Jiro123
投稿数: 271
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
yoshiさんが書かれているように、
@で指定する設定ファイルの書式はコマンドラインの書式と同等です。
取得する際のINIGet関数のパラメータの書式も同じです。
[FOO]BAR を取得したいのであれば、foo.iniも
[FOO]BAR=1
と記述してあげる必要があります。
@で指定する設定ファイルの書式はコマンドラインの書式と同等です。
取得する際のINIGet関数のパラメータの書式も同じです。
[FOO]BAR を取得したいのであれば、foo.iniも
[FOO]BAR=1
と記述してあげる必要があります。
投票数:0
平均点:0.00
null
投稿数: 191
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
> ○[FOO]BAR=AAA
はい。foge.ini の内容がこれであれば取得出来ます。
> @foge.ini 内でセクション名を明記していらっしゃいますでしょうか?
上の方にも書いていますが、foge.ini は以下の通りです。
勿論、セクション名も書いています。
-- ここから
[FOO]
BAR=1
-- ここまで
これを INIGet('[FOO]BAR') で取得することが使用している環境では何故か出来ないのです(SP1b)
はい。foge.ini の内容がこれであれば取得出来ます。
> @foge.ini 内でセクション名を明記していらっしゃいますでしょうか?
上の方にも書いていますが、foge.ini は以下の通りです。
勿論、セクション名も書いています。
-- ここから
[FOO]
BAR=1
-- ここまで
これを INIGet('[FOO]BAR') で取得することが使用している環境では何故か出来ないのです(SP1b)
投票数:0
平均点:0.00
y-sakamoto
投稿数: 7
![新米 新米](../../uploads/rank3e632f95e81ca.gif)
@foge.ini内でセクション名を明記していらっしゃいますでしょうか?
何も指定しなければ[MAGIC_ENV]セクション内のコマンド名と認識されてしまいます。
×BAR=AAA
○[foo]BAR=AAA
何も指定しなければ[MAGIC_ENV]セクション内のコマンド名と認識されてしまいます。
×BAR=AAA
○[foo]BAR=AAA
投票数:0
平均点:0.00
yoshi
投稿数: 33
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
こんにちは。
すでに試されているならばすいません。
@設定ファイルはコマンドラインと同等の設定内容になるので、
/[foo] ← 不要かもしれません。
/[foo]BAR=AAA
で試されてはいかがでしょうか?
すでに試されているならばすいません。
@設定ファイルはコマンドラインと同等の設定内容になるので、
/[foo] ← 不要かもしれません。
/[foo]BAR=AAA
で試されてはいかがでしょうか?
投票数:0
平均点:0.00
null
投稿数: 191
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
色々変えてみたりしているんですが、何故か空文字が返ってきます。
まあ、そこさえ注意していれば使い道はあると思います。
回答ありがとうございました。
まあ、そこさえ注意していれば使い道はあると思います。
回答ありがとうございました。
投票数:0
平均点:0.00
pu_mahalo
居住地: 大阪
投稿数: 775
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
こんにちは Puです
>ただ、IniGet('[FOO]BAR') では取得出来ませんでした。
>不具合なのか、そう言うものなのか判りませんが(1.8 SP1b)
当方も1.8SP1B」ですが
問題なく取得できてますが...([FOO]ではないですが)
う〜ん なんなんでしょう
>ただ、IniGet('[FOO]BAR') では取得出来ませんでした。
>不具合なのか、そう言うものなのか判りませんが(1.8 SP1b)
当方も1.8SP1B」ですが
問題なく取得できてますが...([FOO]ではないですが)
う〜ん なんなんでしょう
投票数:0
平均点:0.00
null
投稿数: 191
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
> uniStudio.exe /ini=magic.ini @foge.ini
なるほど、コマンドで指定するんですね。
次のようなショートカットを作成したところ、
IniGet('BAR') で foge.ini の BAR の値を取得出来ました。
@a.ini とか続けて指定すればそれも読込むようです。
"C:\Program Files\uniPaaS\Studio V1Plus\Projects\test\test.edp" /ini=magic.ini @foge.ini @a.ini @b.ini
foge.ini
[FOO]
BAR=AAA
ただ、IniGet('[FOO]BAR') では取得出来ませんでした。
不具合なのか、そう言うものなのか判りませんが(1.8 SP1b)
なるほど、コマンドで指定するんですね。
次のようなショートカットを作成したところ、
IniGet('BAR') で foge.ini の BAR の値を取得出来ました。
@a.ini とか続けて指定すればそれも読込むようです。
"C:\Program Files\uniPaaS\Studio V1Plus\Projects\test\test.edp" /ini=magic.ini @foge.ini @a.ini @b.ini
foge.ini
[FOO]
BAR=AAA
ただ、IniGet('[FOO]BAR') では取得出来ませんでした。
不具合なのか、そう言うものなのか判りませんが(1.8 SP1b)
投票数:0
平均点:0.00
pu_mahalo
居住地: 大阪
投稿数: 775
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
こんにちは Puです
uniStudio.exe /ini=magic.ini @foge.ini
です
INIGet('[FOO]BAR') で取得出来ますが
uniStudio.exe /ini=magic.ini @foge.ini
です
INIGet('[FOO]BAR') で取得出来ますが
投票数:0
平均点:0.00
null
投稿数: 191
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
> @付きで INIの後ろに指定する
すいません。使用方法が判りません。
Magic.ini の最終行に @foge.ini を追加してみましたが、
INIGet('[FOO]BAR') で取得出来ませんでした。
何か違うんでしょうね・・・
foge.ini
[FOO]
BAR=1
すいません。使用方法が判りません。
Magic.ini の最終行に @foge.ini を追加してみましたが、
INIGet('[FOO]BAR') で取得出来ませんでした。
何か違うんでしょうね・・・
foge.ini
[FOO]
BAR=1
投票数:0
平均点:0.00
pu_mahalo
居住地: 大阪
投稿数: 775
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
こんにちは Puです
INIGETで事たりると思いますが
私は 別途 TEXTファイルに 項目を記述して
そのTEXTファイルを@付きで INIの後ろに指定するだけで
INIGETで 色々な項目が取得できるので
標準機能で事足りるかと
INIGETで事たりると思いますが
私は 別途 TEXTファイルに 項目を記述して
そのTEXTファイルを@付きで INIの後ろに指定するだけで
INIGETで 色々な項目が取得できるので
標準機能で事足りるかと
投票数:1
平均点:0.00
null
投稿数: 191
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
ちょっと相談です。前々から思っていたのですが、Magic.ini 以外の
個々に作った設定ファイルの値を楽に取得する方法は無いのでしょうか?
(取得方法が判らないのではなく楽に取得したいというところがポイントです)
OSEnvGet() で環境変数が、IniGet() で Magic.ini の環境設定値が取得出来ますよね。
それに近い感覚で自分が作成した foge.ini などの設定ファイルから設定値を取得するような方法、
又は foge.xml に設定値を保存しておいて、そこからコマンド一発で取得するような方法って無いのでしょうか?
このような関数を用意して対応しています、この UDF を使っています等の情報がありましたらお願いします。
個々に作った設定ファイルの値を楽に取得する方法は無いのでしょうか?
(取得方法が判らないのではなく楽に取得したいというところがポイントです)
OSEnvGet() で環境変数が、IniGet() で Magic.ini の環境設定値が取得出来ますよね。
それに近い感覚で自分が作成した foge.ini などの設定ファイルから設定値を取得するような方法、
又は foge.xml に設定値を保存しておいて、そこからコマンド一発で取得するような方法って無いのでしょうか?
このような関数を用意して対応しています、この UDF を使っています等の情報がありましたらお願いします。
投票数:0
平均点:0.00