問題タブ [mklink]
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.
dir - プログラムで mklinked フォルダーを検索したい
フォルダが実際に mklink によって作成されたハード リンクであることを確認することは可能ですか? フォルダーとそれに続くサブフォルダーを取得したいのですが、ハード リンクされたフォルダーがループに陥ります。
問題を解決するための助けや手がかりをいただければ幸いです。
Mehrdad Ahankhah www.irancad.com
winapi - win32api - UAC を有効にした場合のシンボリックリンク作成の問題?
CreateSymbolicLinkW() 関数 (Kernel32.dll から) を使用してシンボリック リンクを作成しようとしています。
それぞれのマシン (Win7 Pro x64 SP1) で:
- UAC が有効になっている(= ローカル管理者権限を持つユーザーのプロセスは、デフォルトでは昇格されていません)
- すべての認証済みユーザーに「シンボリック リンクの作成」ユーザー権利の割り当てを許可しました (コンピューター -> Windows の設定 -> セキュリティ -> ローカル ポリシー -> ユーザー権利の割り当て -> シンボリック リンクの作成 = 認証済みユーザーのグループ ポリシーを通じて)
- 考えられるすべてのシンボリック リンクの評価の種類を有効にしました (これもグループ ポリシー設定により)。(「fsutil 動作クエリ SymlinkEvaluation」を確認するには、「ローカルからローカルへのシンボリック リンクが有効になっています。ローカルからリモートへのシンボリック リンクが有効になっています。リモートからローカルへのシンボリック リンクが有効になっています。リモートからリモートへのシンボリック リンクが有効になっています。」
現在の状況は次のとおりです。
- UNELEVATEDプロセスで非管理者ユーザーとしてCreateSymbolicLinkW()を実行すると、機能します(シンボリックリンクが作成されました)
- ELEVATEDプロセスでADMINユーザーとしてCreateSymbolicLinkW()を実行すると、機能します(シンボリックリンクが作成されました)
- 昇格されていない (!) プロセスで ADMIN (!) ユーザーとして CreateSymbolicLinkW() を実行すると、機能しません
最後のケースが実際の問題です。GetLastError によって返されるエラーは次のとおりです: 1314 (= "必要な権限がクライアントによって保持されていません") .
昇格されていないシェルの管理者以外のユーザーには機能するのに、昇格されていないプロセスの管理者ユーザーには失敗するのはなぜですか?
私のコードは、できれば昇格されていないプロセスで、あらゆるタイプのユーザーによって実行されることを意図しています。回避策として管理者ユーザーにプロセスの昇格を依頼することは、どのような状況でも避けたいと思います。
同じ動作は、Windows シェルの MKLINK コマンドでも再現できます(昇格されていないシェルの管理者ユーザーには失敗しますが、昇格されていないシェルのすべての非管理者ユーザーには機能します)。
Python 2.7 のサンプル コード:
mklink - mklink を使用して PC 間でゲームの保存を同期する
ネットワーク上に 3 台のコンピューターがあり、それぞれに同じ Terraria キャラクターを配置したいと考えています。mklink
コマンドプロンプトでこれを行う機能があると確信しています。ブリッジとして使用している NAS があります。私はそれをいじりましたが、これまでのところ私は何の進歩もしていません。私が持っている最高のものは次のとおりです。
mklink /d "%USERPROFILE%\My Games\Terraria\Players" "\\NAS\Terraria\Players"
しかし、これは「そのファイルが既に存在する場合、ファイルを作成できません」を返します。
前もって感謝します!