- ブラウザからドラッグ&ドロップ等で作ったインターネットショートカットファイルから、URLとページタイトルを取得。
インターネットショートカットのこと
.url と .website の2種類ある。IE9以降の IE は .website 形式、それ以外のブラウザは .url 形式。Edge は .website を継いだのかと思いきや、そもそもインターネットショートカットが作れなくなった模様。ホント身勝手。
.url, .website 両形式ともテキストファイルで、旧来のiniファイルそのもの。公式の仕様書は見つけられなかったが、どちらも最低限、以下の書式でURLが含まれている。
[InternetShortcut] URL=ショートカットのURL
ページタイトルは .url 形式には含まれてないので、ファイル名をページタイトルと見なすしかない。.website 形式にはページタイトルも含まれるようだが仕様不明。そもそもIE限定の形式に今さら頼る気なし。
【オマケ】.url, .website の拡張子はエクスプローラでは断固として表示されない。
上記2行を書いたテキストファイルを作成し、拡張子を .url に変更すれば手作業でショートカットを作れるが、以後、他の拡張子に変更できなくなる。
結論
URL
ファイルをiniファイルとして開いて取得。iniファイルの読み込み方は 別記事にて。
ページタイトル
ファイル名から拡張子を省いた物をタイトルとするしかない。
var title = System.IO.Path.GetFileNameWithoutExtension( "ファイル名" );
ファイル名なので、ファイル名に使用不可の文字( \ / " : * ?
など)は省かれてしまうし、長すぎるとブツ切られるが、まあどうしようもない。