実行ファイルにドロップされたファイルのパスを取得する実行ファイル(EXEファイル)や実行ファイルへのショートカットにファイルをドラッグ&ドロップすることにより、そのファイルを開いて起動するアプリケーションがよくあります。このようなアプリケーションを作るには、アプリケーションでドロップされたファイルのパスを取得して、そのファイルを開けばよいだけの事です。 それではドロップされたファイルのパスはどのように取得するかというと、起動時のコマンドライン引数として取得することができます。指定されたコマンドライン引数の取得法は、「起動時のコマンドライン引数を取得する」で説明していますので、そちらをご覧ください。なお複数のファイルがドロップされた場合でも、コマンドライン引数によりすべてのファイルのパスを取得できます。 さらに、関連付けによりアプリケーションが開始された場合も同様に、コマンドライン引数で開いたファイルのパスを取得できます。関連付けの方法については、「プログラムをファイルの拡張子に関連付ける」をご覧ください。 次の例では、Environment.GetCommandLineArgsメソッドを使うことにより、ドロップされたファイルを取得しています。 [VB.NET] 'コマンドラインを配列で取得する Dim cmds As String() = System.Environment.GetCommandLineArgs() If cmds.Length > 1 Then 'ドロップされたファイルのパスをすべて表示 Console.WriteLine("次のファイルがドロップされたました") Dim i As Integer For i = 1 To cmds.Length - 1 Console.WriteLine(cmds(i)) Next i Else Console.WriteLine("ドロップされたファイルはありませんでした") End If [C#] //コマンドラインを配列で取得する string[] cmds = System.Environment.GetCommandLineArgs(); if (cmds.Length > 1) { //ドロップされたファイルのパスをすべて表示 Console.WriteLine("次のファイルがドロップされたました"); for (int i = 1; i < cmds.Length; i++) { Console.WriteLine(cmds[i]); } } else { Console.WriteLine("ドロップされたファイルはありませんでした"); } |
|
Copyright 2002-2008 DOBON!. All rights reserved.
|