• 締切済み

ショートカットファイルの動きについて

ショートカットファイルの動きについて教えてほしいです。 仮にカレントディレクトリをログに出力するバッチファイル(output.batとする)があるとします。 output.batへのショートカットを作成し、ショートカットの「リンク先」に以下を指定しました(相対パスがとれるということで調べました) %windir%\system32\cmd.exe /c cd /d .\ & start (output.batのパス) これによりショートカットの保存されているディレクトリがカレントディレクトリとなり、Aがショートカットのパスをログに出力できました。 このショートカットをタスクバーのツールバーにショートカットのフォルダを新規追加しました。 そしてツールバーからショートカットを開くとc:\windows\system32がログに出力されました。 ショートカット自体は同じものなのにツールバーだと思い通りの動きになりませんでした。 ツールバーでの利用をしたいため、この動きを想定通りにするためにはどのようにすればよいでしょうか?

みんなの回答

  • hahaha8635
  • ベストアンサー率22% (800/3609)
回答No.1

作業用フォルダ

nsdhrs67
質問者

補足

hahaha8635さん、ありがとうございます。 作業用フォルダ=ショートカットファイルのプロパティにある作業フォルダー ということでしょうか。 今回は例で一つのディレクトリに一つのショートカットですが、実装したいのは多ディレクトリ、多ショートカットになります(ショートカットにはそれぞれ引数を与えて異なる処理を想定しています)。 多ディレクトリの想定なのでショートカット一つずつに作業フォルダーを設定するのは避けたいのです。設定するのであれば最初からショートカットではなくバッチファイルにしてしまった方が確実ですが、階層変更、バッチ修正等に応用がきくように考えています。

関連するQ&A

  • cat でファイルの拡張子を指定

    基本的なことで申し訳ないんですが、 UNIXのcat コマンドでファイルの中身を出力するときに、カレントディレクトリでないファイルを出力するには、パスも書きますよね。 cat パス/ファイル名 catでパスを指定して使うときに、 パスを繰り返し書かないで、 (その指定したディレクトリ直下だけでいいので)複数の特定の拡張子のファイルのみ出力するには、どうすればよいのですか? 例えば、 拡張子が、cとcsとtxtのファイルだけ出力して、その他のファイルは出力しない というようなときです。 既に書いたとおり、パスは繰り返して書かないので、 cat パス/*.c パス/*.cs パス/*.txt のようなものはナシということでお願いします。

  • batファイルでrenameができません。

    Windowsのbatファイルでrenameをするにはどうすればよいでしょうか? カレントディレクトリ └ A というディレクトリ構造があって、Aの中には「a.txt」があるとします。 カレントディレクトリから、 「rename "./a/A.txt" B.txt」 と書いてあるbatファイルを起動しても、「a.txt」の名前が変更されません。 「指定したパスが見つかりません。」と出てきてしまいます。 ダブルクォーテーションを取ったりつけたり、絶対パス、相対パスを書いたりと いろいろ試しましたがだめでした。 何か方法はないでしょうか?

  • バッチファイルのログ出力方法

    バッチファイルのログ出力方法 サーバーに置いてあるmdbファイルを各クライアント端末のデスクトップ(複数台)にコピーする バッチファイルを作成しています。 COPY /Y "C:\(コピー元の絶対パス)\コピーファイル.mdb" \コピー先の絶対パス でファイルのコピーができることが確認で見ました。 例えば、正常にコピーができたのか、何らかの理由(PCが落ちていたetc)でコピーができなかったのかを ログで出力したいのですが、どのようにコーディングすればよいでしょうか? ログの出力場所は「.batファイルと同じディレクトリー」にしたいです。 一生懸命調べたのですが… 素人なので分かりませんでした。 皆様宜しくお願いいたします。

  • デスクトップ上の全ファイル取得

    開発環境 WindowsXP,SP2 Visual Studio 2005 VC++ SDK SHGetFolderPath()でデスクトップのパスを取得した後、FindFirstFileによってデスクトップ上の全ファイル及びディレクトリの名前を取得したいと考えております。 SHGetFolderPathで取得したパスは、 C:\Documents and Settings\...\デスクトップ となっており、この文字列をwsprintfで次のように加工しました。 wsprintf(output,"%s\\*.*","C:\Documents and Settings\...\デスクトップ"); このoutputをFindFirstFile,FindNextFile,FindCloseを組み合わせたプログラムでディレクトリ内の全てのファイル及びディレクトリの名前を取得しています。 このプログラムは普通(?)のディレクトリでは有効で、こちらの期待通りの動きをしてくれるのですが、取得したデスクトップのパスを渡すと、デスクトップフォルダ内にはデスクトップという名前のフォルダしかないと出力されます。以下のような感じです。 調査ディレクトリ:C:\Documents and Settings\...\デスクトップ 調査結果 "C:\Documents and Settings\...\デスクトップ"ディレクトリ内のファイル及びディレクトリ:デスクトップ これはWindowsの仕様の動作なのでしょうか。 特殊フォルダであるデスクトップは、FindFirstFileでは調査出来ないのでしょうか? 他に方法はありますか? どうか教えてください。

  • ショートカット(.lnk)

    外付けハード内のフォルダーが、すべてショートカット(.lnk)になってしまい、 開くことが出来なくなりました。 元に戻す方法を、教えてください。 リンク先は、「%windir%\system32\cmd.exe/c"start%cd%AdobeReader\DSCI3202.jpg-us&&%windir%\explorer.exe%cd%ファイル名」となっています。

  • 「ファイル名を指定して実行」で見に行くディレクトリとautoexec.bat

    Windows98SEです。 スタート→ファイル名を指定して実行 で、例えば、notepadと入力すると、メモ帳が立ちあがりますよね。 ディレクトリを指定しなくても実行できるということは、見にいくディレクトリの設定がどこかでされているのだと思いますが、どこでされているのでしょうか。 過去の質問と回答(下記)によると、 「コマンドプロンプトでpathと入力したとき表示されるのが、コマンドプロンプトでカレントディレクトリを移動しなくても見に行くフォルダ」 なのだそうです。 そしてそれは、c:\Autoexec.batの中の PATH=......... で設定されているのだそうです。 私が思うのは、「ファイル名を指定して実行」のときもそれがきいているんじゃないかなあ、ということです。 私のPCでは、コマンドプロンプトでpathと入力すると、 PATH=C:\WINDOWS;C:\WINDOWS\COMMAND と表示されます。 C:\WINDOWSにはnotepadがあります。それはそれでいいのです。 でも、よくわからないのは、私のPCの c:\Autoexec.bat には、 PATH=.... というのがないのです。そのファイルには、 loadhigh C:\WINDOWS\COMMAND\nlsfunc.exe C:\WINDOWS\country.sys と書いてあります。(これですべて) これでいいのでしょうか。 それとも、「ファイル名を指定して実行」の場合は、 c:\Autoexec.bat は関係ないのでしょうか。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=6175

  • Java JDK1.3のインストールとpath設定が上手くいきません。

    Sun Microsstems社のJDKインストール指示を参照し、JavaプログラミングBlack Bookに付属のCD-ROMからJDK1.3をwindows98にインストールしました。 システムエディタのautoexec.batウィンドウに PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\JDK1.3\BIN と記入し、再起動を行った後、 MS-DOSプロンプト画面でpathが通ったことを確認(表示されるpathにc:¥jdk1.3¥binを確認)していますが、C:¥WINDOWS>カレントディレクトリをソースプログラムがあるディレクトリに移動できません。何度コマンドを入力しても「ディレクトリの指定が違います」と表示され、動きがとれません。 助けて下さい。

  • ショートカットで起動した場合のカレントディレクトリ

    実行ファイルのあるディレクトリに結果を出力するCで書いたプログラムがあります。 この実行ファイルのショートカットを作り、それを起動したところ、結果が手元ではなく、実行ファイルのあるディレクトリに作成されてしまい困っています。 ショートカットをおいたディレクトリに出力するようにするにはどうやったらよいのでしょうか? 実行ファイルのソースリストはありますので、実行ファイルの修正も可能です。 ソースリストを見たところ、結果を出力するファイルは、  fp = fopen("temp.txt", "w"); でファイルをオープンしていました。 なお、実行環境は、WinXPです。 よろしくお願いします。

  • [バッチファイル]指定ファイルをサブディレクトリを含み検索・処理する

    ■WindowsXP Pro SP3 ■ディレクトリ構造 カレント ├ディレクトリ1  ├サブディレクトリ1-1   ├対象ファイル1-1  ├サブディレクトリ1-2   ├対象ファイル1-2 ├ディレクトリ2  ├サブディレクトリ2-1 ・ ・ ・ このような状態で指定したファイルすべてを見つけ出し、1つ1つ処理を行っていくバッチファイルの書き方を教えて頂きたいです 具体的には、指定する対象ファイルというのがmpeg2ファイルで、そのmpeg2ファイルをすべてFFmpegを用いてmpeg1へ変換しinputと同一ディレクトリに出力するといった動作です 考えた流れはこんな感じなのですがどうにもうまく動作しなくて困っています ディレクトリ1 ディレクトリ1内のサブディレクトリ1-1 サブディレクトリ1-1内の対象ファイル1-1を見つける 見つかったときはFFmpegの処理をする FFmpegが処理し終わったら次の対象ファイルを探す FFmpegの記述は FFmpeg.exe -i "input_file" "output_file" のような感じなのでパスや相対指定を使えば理想通りの動作をすると思うのですが、いま一つ書き方がわかりません

  • バッチファイル ファイル ショートカット

    質問させて頂きます。 実際に私が行いたい作業を下記に述べます。 1・バッチファイル起動。 2・aaaディレクトリをコピー。 3・Cドライブ直下に貼り付け。 4・Cドライブ直下に貼り付けたaaaディレクトリにあるbbb.txtのショートカットアイコンをデスクトップに作成。 上記が私の行いたい作業です。「3・Cドライブ直下に貼り付け。」までは実装出来ましたが、4・ショートカットの作成方法が分かりません。 よろしくお願いします。 OSはWindows 7です。