コマンドラインの取得について

返信する


答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。

BBCode: ON
[img]: ON
[url]: ON
スマイリー: OFF

トピックのレビュー
   

展開ビュー トピックのレビュー: コマンドラインの取得について

by イグトランス » 2005年7月09日(土) 12:19

PathGetArgsというコマンドラインからEXE自身の部分を取り除く関数があります。
これで足りることも多いですよ。

コード: 全て選択

Declare Function PathGetArgs Lib "shlwapi" Alias "PathGetArgsA" (psz As BytePtr) As BytePtr
Dim pszCmdLine As BytePtr
pszCmdLine = PathGetArgs(GetCommandLine())
MessageBox(0, pszCmdLine, "", MB_OK)
End

Re: コマンドラインの取得について

by まけイヌ » 2005年7月09日(土) 10:10

>  C/C++のように、コマンドラインがint argc、char *argv[]のように取得できれば便利だと思います。
>
>  FileName = argv[0]
>
> みたいになれば、エディタなどのアプリも作りやすくなるのではないでしょうか。
マイナーかもしれませんが..
PerlのGetoptみたいなのがあるとホントに嬉しいです(^^;
※自分で実装しろって?ごもっとも..

★サンプルコード (Perl5) [#はコメントです]

コード: 全て選択

#■ライブラリ"getopt.pl"をロードする
require ('getopt.pl');

#■豆知識:Perl5の引数について
#Perl5の場合、引数は自動取得しています。
#引数は常にシステム変数@ARGVに格納されます。
#※引数の数は配列指定(@ARGVもしくは$#ARGV)で取得できます
# -> $ARGCなどの余分なスカラー変数は作成しません

#■引数を整理する
#引数の中に含まれるオプション句(-hや/hなど)を@ARGVから取り出し、
#@ARGVの中にオプションを覗いた引数のみを格納するよう再設定します。
#取り出したオプションは頭に"opt_"を付けたスカラー変数に格納されます。
#例えば-hを入力すると、$opt_hというスカラー変数が有効になり、
#-d C:\Windowsと入力すると$opt_dに"C:\Windows"という文字列が入ります。
#
#下の例では-h、-d [文字列]、-sを有効にしています。
&Getopts ('hd:s');

コマンドラインの取得について

by Sunshine » 2005年7月09日(土) 01:44

 C/C++のように、コマンドラインがint argc、char *argv[]のように取得できれば便利だと思います。

 FileName = argv[0]

みたいになれば、エディタなどのアプリも作りやすくなるのではないでしょうか。

ページトップ