問題タブ [dsofile]
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.
ole - DSOFile.OleDocumentProperties.Save はファイルを変更しますか?
DSOFile.OleDocumentProperties.Save
NTFS 上のファイルに関連付けられたメタデータを変更します。
ファイル自体を変更しますか。つまり、チェックサムが変更されますか?
それとも、ファイルに関する一部の NTFS メタデータを変更するだけで、チェックサムは同じままですか?
クレジット:この質問は、実際には Ilmo による自問自答でした。
dll - VBS - Dsofile Windows 7 64 ビットを登録して使用する
Windows 7 64 ビット マシンで VBS スクリプトを使用してDsofileを使用しようとしています。私の問題はDLLの登録にあると思います。
これを使用してDLLを登録しました
そして言われる
すべてがうまくいったと私を信じさせます。Microsoft が提供するテスト コードを実行しようとすると、
最初の行で失敗し、次のように述べています
これにより、DLL が実際には正しく登録されていないと思います。
次に、このソリューションに基づいて、次のようにしてDLLを登録しようとしました
また、正しく登録されたことも通知されますが、スクリプトは最初の行で失敗します。
Dsofile を使用できるようにするには、どうすればこれを修正できますか?
ありがとう。
pdf - VBScript を使用して PDF ドキュメントのカスタム プロパティを変更する
VBScript を使用して PDF ドキュメントのカスタム プロパティ (メタデータ) を変更するにはどうすればよいですか?
VBScript から iTextSharp を利用する方法はありますか? または、別のツールを使用する必要がありますか? 私はMS OLEファイルプロパティリーダーを試しました:
エラーが発生しました: ActiveX コンポーネントはオブジェクト 'DSOFile.OleDocumentProperties' を作成できません
c# - C コードで DsoFile プロパティにアクセスする必要がある
C# でコードを作成し、Dsofile.dll を使用してプロパティを設定しました。システムを再起動した後でも、正常に動作し、設定したプロパティが表示されていることがわかります。ここで、c または c++ コードを使用して同じプロパティにアクセスしたいと考えています。どんな体でもこれを助けることができます。
は、属性を設定するために使用したコードです。同じ TestXXX プロパティに c または c++ コードからアクセスできるようにします。
c# - 異なるプラットフォーム 32 および 64 の C# プロジェクトで DSOFile.dll を参照および登録する方法は?
DSOFile.dll を使用して Windows ファイル システムにカスタム属性を追加していますが、dll の 2 つのバージョン (32 と 64) があるため、C# プロジェクトで dll を参照する方法を教えてください。また、32 または 46 のいずれかのプラットフォームに基づいて正しい dll を登録するにはどうすればよいですか? これには明確な手順が必要です。
c# - C#を使用してExcelファイルからメタデータを削除しますか?
現在、C# を使用して、複数の Excel ファイルのカスタム属性を設定しています。Microsoft からインポートされた DSOFile として知られるライブラリを使用して、CustomProperties プロパティに書き込みます。私が直面している問題の 1 つは、Company や Year などのカスタム プロパティが既に書き込まれている Excel ファイルにコードが書き込もうとするたびに、COMException 例外がスローされ、ファイルのカスタム プロパティが既に存在することを示すことです。その名前のフィールド。正確なメッセージ: 「その名前のアイテムは既にコレクションに存在します」。ファイルに書き直すことができるように、コレクション内のそのアイテムを削除できるようにしたいと思います。たとえば、誤って間違った年をファイルの year 属性に追加した場合、そのフィールドをクリアして新しい値を書き込む機能が必要です。DSOFile クラスに、メタデータを削除するメソッドが見つかりませんでした。ファイルのプロパティウィンドウを使用せずに、ファイルからメタデータを「プログラムで」クリアする方法はありますか?
サンプルコード:
c# - カスタム属性を追加できませんでした - 修正が必要です
DSOFile
次のコードを使用して、カスタム属性をファイルに書き込むために使用しています。
しかし、コードの実行中に次のエラーが表示されます。
型 'System.InvalidCastException' の未処理の例外が batchFile.exe で発生しました
追加情報: タイプ 'DSOFile.OleDocumentPropertiesClass' の COM オブジェクトをインターフェイス タイプ 'DSOFile._OleDocumentProperties' にキャストできません。IID '{58968145-CF01-4341-995F-2EE093F6ABA3}' を持つインターフェイスの COM コンポーネントでの QueryInterface 呼び出しが次のエラーにより失敗したため、この操作は失敗しました: No such interface supported (HRESULT からの例外: 0x80004002 (E_NOINTERFACE)) .
次に、行を実行したときにタイプを変更しfile
ますdynamic
が、ファイルに関連付けられたプロパティを追加または表示できません。すべてのプロパティが表示されます。関数の評価には、すべてのスレッドを実行する必要があります。
つまり、コードは次のようになります。
これは、デバッグ中に変数を監視するとどうなるかのイメージです。
私が間違っているのは何ですか?任意の提案をいただければ幸いです。