問題タブ [subst]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
602 参照

c++ - マウントされたパスの元の場所をどのように取得しますか?

C ++では、マウントされたドライブの場所を取得するにはどうすればよいですか?たとえば、ドライブs:をc:\ tempにマウントした場合(コマンドラインでsubstを使用) "subst c:\ temp s:" "s:"を渡して "c:\temp"を取得するにはどうすればよいですか。

また、ネットワークドライブでどのように実行できるか知りたいです。(s:が "\ MyComputer \ Hello"にマウントされている場合、 "\ MyComputer \ Hello"を取得してから、そこから "c:\ Hello"を取得します)

とても簡単な質問かもしれませんが、それに関する情報が見つかりませんでした。

ありがとう、

アダム

0 投票する
2 に答える
5612 参照

winapi - Windowsドライブ文字をパス(substおよびnetwork)に解決します

ドライブ文字(などX:\foo\bar.txt)を使用してパスを同等のUNCパスに解決する普遍的な方法があるかどうか疑問に思います。これは、次のいずれかになります。

  • X:\foo\bar.txt実ドライブの場合X:(ハードディスク、USBスティックなど)
  • \\server\share\foo\bar.txtX:ネットワークドライブがマウントされている場合\\server\share
  • C:\xyz\foo\bar.txtがへのコマンドマッピングX:の結果である場合SUBSTX:C:\xyz

私は次のような部分的な解決策があることを知っています:

  1. ネットワークドライブを解決します(たとえば、に依存する質問556649WNetGetUniversalNameを参照してください)

  2. SUBSTドライブ文字を解決します(QueryDosDeviceどちらが期待どおりに機能するかを確認しますが、ローカルドライブやネットワークドライブなどのUNCパスは返しません)。

Win32でこのドライブ文字解決を実装する簡単な方法がありませんか?それとも、私は本当に両方をいじって、WNetGetUniversalName必要QueryDosDeviceなものを手に入れる必要がありますか?

0 投票する
0 に答える
648 参照

visual-studio - TFS、subst、Visual Studio 2010、相対パス

私のTFSワークスペースはにあります。これはWindowsのsubstコマンドを使用しC:\Users\...\MyProjectてマップしました。X:\私のVisualStudio2010ソリューションでは、これはほとんどのプロジェクトで正常に機能します。C:\Users\...私が何をしようとも、それらのうちの2つだけが常に(絶対に!)パスにリンクされています。

私は試した:

  1. 明らかに、それらを削除して再度追加します。
  2. ワークスペース設定で、これら2つのプロジェクトの明示的な絶対マッピングを削除します。プロジェクトを追加するとすぐに再作成されます。
  3. メモ帳を使用してソリューションファイルを手動でいじります。ソース管理バインディングを無効にします。2。の明示的なバインディングは、再バインドすると再作成されます。

いくつかの助けは非常にクールでしょう。ソース管理だけを扱って数時間立ち往生しています...

乾杯マティアス

PSなぜ私が何かをするのか疑問に思う人もいるかもしれませんsubst。プロジェクトのディレクトリ名がかなり長いため、260文字を超えることが多く、VS/.NET環境の多くの機能が機能しなくなります。

0 投票する
2 に答える
9759 参照

windows - Windows サービスの開始に失敗し、一般的なエラーが発生する

VS2010 を使用して簡単な NT サービスを作成しましたが、InstallUtil を使用して XPSP3 dev ボックスに問題なくインストールされます。ただし、実行するnet start TestServiceと一般的なエラーが発生します。
The TestService service failed to start due to the following error: The system cannot find the path specified.

net startこの同じエラーはイベント システム ログにも書き込まれますが、残念ながら、指定されたパスが気に入らなかったという詳細はありません。そのため、Filemon を実行しましたが、うまくいきませんでした。失敗したサービスに光を当てる出力はありませんでした。

サービスは Local Service アカウントで実行されます。

この問題をデバッグするためのヒントはありますか?

編集:ヒントをありがとう。DLL は問題なく、catch ブロックは機能しませんでした。try/catch ブロックInitializeComponentOnStartメソッドがありました。パスを確認する以下のステートメントはヒントでした。私は明らかな間違いを犯しましたInstallUtil。何らかの理由で成功を報告した SUBST されたドライブからバイナリを実行しました。ローカル パスから実行InstallUtilすると問題が解決し、サービスが正しく開始されるようになりました。

0 投票する
1 に答える
38744 参照

windows - VBScript でのコマンド ライン出力の取得 (ファイルへの書き込みなし)

私は VBScript を使用しています。私の目標は、選択したパスをドライブ文字に置き換えられるようにすることです。D ドライブが必要ですが、それが利用できない場合は、それが適切な場所に既にマップされているかどうかを確認する必要があります。そうでない場合は、ユーザーに通知します。私はこれを見つけました: http://technet.microsoft.com/en-us/library/ee156605.aspxそして私は彼らの2番目の例を適応させようとしています:

(私の適応):

次に、D ドライブがマップされている場所を示す文字列を検索します。も試しましobjShell.Exec("subst")たが、まだ出力が得られません。私が間違っているかもしれないことについて誰かが何か考えを持っていますか? または、ドライブのマッピングについて伝えるより良い方法はありますか? ありがとう、

213897

0 投票する
2 に答える
3639 参照

windows - cmd-使用可能なドライブ文字をローカルパスに一時的に割り当てることは可能ですか?

Windowsでcmdを使用すると、pushdを使用してドライブ文字をUNCパスに簡単に割り当てることができます。

ただし、ファイルパスが短くなり、パスが非常に長いファイルをサポートしないコマンドを使用する必要があるため、ローカルパスでも同じことができるようにしたいと思います。

G:別のマシンで使用できるため、スクリプトにハードコードされていないアイデアは次のとおりです。

試しpushd \\?\%CD%ましたが、残念ながら機能しません…</ p>

誰かがそのための魔法のトリックを持っていますか?

ありがとうございました

0 投票する
2 に答える
2635 参照

python - PythonでWindowsのsubstコマンドを複製するにはどうすればよいですか?

Windows セットアップで仮想ドライブをマップしようとしていますが、使用しているツールの 1 つがファイル名のスペースを好みません。

コマンドラインでは、次のようにします

Python で機能を複製しようとしましたが、成功しませんでした。os.execl()コマンドを直接実行するために使用を開始しましsubstたが、無効なパラメーター エラーが報告されました。

SO の他のソリューションのいくつかは、Win32API を直接使用することを提案しています。

ちなみに、私は Windows で Python 2.7.3 を使用しています。

0 投票する
2 に答える
920 参照

batch-file - この「subst」呼び出しは何をしますか?

このコマンドがバッチスクリプトで何をするのか知りたいのですが:

0 投票する
1 に答える
5414 参照

php - マップされたネットワーク ドライブをサイレント モードでアンマップする方法

これを行うローカルで実行されているPHPスクリプトがあります

ただし、 T: が既にマップされているか、他の場所に置き換えられている場合は、最初にマップを解除したいと思います。だから私はこれをします

ただし、T: がマップされていない場合、exec net use はコンソールにエラーを出力し、マップされているsubst でない場合、exec subst はコンソールにエラーを出力します。コンソール ウィンドウにクリーンな出力を表示したいので、マップされていないドライブをマップ解除しようとしてもエラーは発生しません。問題は、これについてどうすればいいのかまったくわからないことです..エラーメッセージの出力を抑制できますか? そうでない場合、ドライブがマップされている場合にのみコマンドを実行するにはどうすればよいですか? 偶然にも、net use /d と subst /d のどちらを実行する必要があるかはどうすればわかりますか?

0 投票する
1 に答える
104 参照

windows - Rundll32 を使用して SUBST の機能を複製する

rundll32 を使用して、関数 subst.exe (ドライブをマッピングするための Windows アプリ) を複製しようとしています。

私はそれDefineDOSDeviceが使用されていることを知っており、渡すパラメータを知っていますが、それを機能させることができません。

C:\Program Files を Z: としてマップしたいとしましょう。

私はすべてのパラメーターを正しい形式であると思うものに渡そうとしましたが、成功しませんでした。

プログラムファイルをZにマッピングするための実用的な構文を誰かが提供してくれたら、rundll32を使用して、私はとても幸せです.

前もって感謝します。