web-dev-qa-db-ja.com

@で始まるWindowsショートカットターゲットパラメータ

デスクトップショートカットといくつかのコマンドラインパラメータを使用して呼び出す必要があるWindowsアプリケーションがあります。

私はこれを何千回もやりましたが、これは少し異なります。 -e 12345-example 12345などの通常のコマンドラインパラメータを使用する代わりに、@12345を使用します(@記号で始まります)。

Windowsショートカットは、実行可能ファイル名の直後に来るこのパラメーターを嫌い、すべてを削除するだけです。理由はわかりません。

例えば:

「ターゲット」としてのc:\example\example.exe @12345 -e9876は、保存時にすべてのパラメーターを取り除き、c:\example\example.exeのみをターゲットとして残します。

Butc:\example\example.exe -e9876 @12345は問題なく動作します。保存して検証し、すべてが良好です。

ただし@パラメータをコマンドの最初のパラメータにする必要があります。コマンドをバッチファイルにラップしてバッチを呼び出すなどの処理を行う以外に、@シンボルをWindowsショートカットの最初のコマンドラインパラメータにするにはどうすればよいですか?

12
Mark Henderson

誰かわかったね? ... Windowsは明らかに@文字を区切り文字として扱います。 Windowsコマンドは、コマンドの最初の要素のみを解釈します...そのため、残りは効果的に切り捨てられます。どうやら、その前に^escape記号に指定することで、動作をオーバーライドできます。

つまり.

c:\example\example.exe ^@12345 -e9876

13
TheCompWiz