問題タブ [ipersistfile]

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 投票する
1 に答える
233 参照

visual-c++ - Windowsでショートカットが存在するかどうかを確認する方法は?

私のプロジェクトでは、特別なオブジェクトのショートカットを作成する必要があります。実装には IPersistFile::Save を使用します。

ここで、特別なオブジェクトの複数のショートカットを作成するという新しい要件があります:「objectname-shortcut」、「objectname-shortcut(2)」、「objectname-shortcut(3)」、...

IPersistFile::Save を直接呼び出すと、新しいショートカットが古いショートカットを上書きします。そのため、いくつかのショートカットが既に存在するかどうかを確認する必要があります。はいの場合、新しい名前「objectname-shortcut(n)」を IPersistFile::Save に渡します。

ショートカットは基本的にファイルであり、API CreateFile を使用して存在するかどうかを確認できます。しかし、他の方法があることを知りたいですか?

IPersistFile::Load を試してみましたが、ショートカットが実際に存在する場合でも、常に E_FAIL が返されます。

ありがとう。

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

winapi - IPropertyStore で IPersistFile::Load を複数回使用する

.lnk一連のファイルを繰り返し処理し、それらに関する情報を取得しています。

これを行うファイルごとに、これは js-ctypes ですが、winapi の質問です。エラー チェックを削除し、コードを簡素化しました。

しかしppropvar.pwszVal、私が編集した最初のファイルの SystemAppUserModelID であることが判明していますが、IPersitFile::Loadこれは予想されることですか? これを修正するにはCoUninitializeCoInitialize各ループまたは何かをする必要がありますか?

ありがとう