[ヘルプTop] [戻る]
特殊リンクの作成(CreateLink)
各種のリンクを作成するコマンドです。
Windowsの持つリンク機能は、ディスクのフォーマットの種類、リンク対象の種類/場所、特性、制限事項、OSのバージョンによって様々に異なるため、非常に分かりにくいものとなっており、あまり利用されていない実情があります。
とはいえ、UNIX環境では当たり前に使用されている、とても便利なものですので、あまり制限を意識しないで使えるものという意味合いで本コマンドを用意しています。
本体とのインターフェイス
転送モード | 通信内容 |
1回目のD&D |
選択ファイル |
WM_COPYDATA |
独自フォーマット |
共有メモリ |
呼び出し元がアイドル状態を待って共有メモリを開放しますので、メッセージループを持たないコマンドは利用できません。
また、起動条件などは環境変数で渡されます。 |
起動条件:実体を持つディレクトリ、ファイルかディレクトリの選択あり
コマンドラインオプション:なし
リンクの作成先
先頭で渡されたファイル名のパスを使用します。
また、入力内容が空でない限り、指定したテキストを更新しません。
作成されたリンクファイルは、移動できるので作成時点で気にしすぎる必要はありませんが、ネットワーク先のリンクやドライブをまたぐリンクの場合は、作成するリンクの種類にご注意ください。
リンク名
生成されるリンクの名前を決定します。
拡張子を変えると動作が変わる場合が多々あるので、元の名前に自動的に先頭に「link_」が付与されます。
リンクファイルは後でリネームできますので、作成時点で気にしすぎる必要はありません。
適当に重複しない名称にしてください。
ジャンクション作成
ジャンクションと呼ばれるリンクを作成します。
NTFS/ReFSで使用でき、ディレクトリに対するリンクです。
ネットワーク先にリンクすることはできません。
生成が成功したら、次のアイテムの処理を準備します。
シンボリックリンク作成
シンボリックリンクと呼ばれるリンクを作成します。
XP以前のOSでは参照すら不可能ですので、ネットワーク上に古いOSが混在している場合は利用を避けた方が良い場合があります。
NTFS/ReFSで使用でき、ファイルとディレクトリに対するリンクで、万能ではありますが作成には管理者権限が必要になる場合があります。
ネットワーク先にリンクすることが可能で、本来は相手先が存在していなくても作成可能であり、ジャンクションやハードリンクよりも一覧生成が速くなりますが、実際のアクセス自体は一覧で省略していた分だけアクセス速度が遅くなる傾向にあります。
生成が成功したら、次のアイテムの処理を準備します。
ハードリンク作成
ハードリンクと呼ばれるリンクを作成します。
NTFSで使用でき、ファイルに対するリンクです。
ネットワークや、ドライブレター(ボリューム)をまたいで利用することはできません。
生成が成功したら、次のアイテムの処理を準備します。
スキップ
現在対象としているアイテムをスキップして、次のアイテムの処理を準備します。
キャンセル
大量にファイルを選択した状態で中断する場合に使用します。
以降の名前のリンク作成処理をキャンセルします。
補足
似たような名称で良く混乱するのでリンクの種類と特徴を記しておきます。
種類 |
対象 |
フォーマット |
ネットワーク |
別のボリューム |
対象OS |
ファイル属性 |
サイズ表示 |
矢印アイコン |
権限 |
ジャンクション |
ディレクトリ |
NTFS/ReFS |
× |
○ |
2000以降 |
リパースポイント |
- |
あり |
ユーザー権限 |
シンボリックリンク |
ディレクトリ/ファイル |
NTFS/ReFS |
○ |
○ |
Vista以降 |
リパースポイント |
0固定 |
あり |
要権限昇格 |
ハードリンク |
ファイル |
NTFS |
× |
× |
2000以降 |
なし |
あり |
なし |
ユーザー権限 |
注意
本コマンドは、OSの返してくるエラーメッセージをそのまま表示させています。
明らかに日本語としておかしいものが表示されることがありますので、十分ご了承ください。