0

VB6 アプリを Reg Free 展開用のマニフェストを使用するように変換しています。

Make My Manifest でマニフェストを作成しましたが、アプリを実行するとエラーが発生します (以下)。

マニフェストが何らかの形で無効になっていないことを確認したい。(私はそれを開いて、いくつかの印刷できない文字を除いて問題ないように見えます。これは、XML 形式のファイルには奇妙に思えます。

** --------------------------- C:\Bungalow\tutor\tutor.exe

アプリケーションの構成が正しくないため、このアプリケーションを開始できませんでした。アプリケーションを再インストールすると、この問題が解決する場合があります。

わかった**

印刷できない文字を含むマニフェストからの抜粋

<file name="THREED32.OCX">
    <typelib tlbid="{0BA686C6-F7D3-101A-993E-0000C0EF6F5E}" version="1.0" flags="control" helpdir="" />
    <comClass clsid="{0BA686AA-F7D3-101A-993E-0000C0EF6F5E}" tlbid="{0BA686C6-F7D3-101A-993E-0000C0EF6F5E}" progid="Threed.SSCheck" description="A three-dimensional check box.               ***\ 1     ª8! DOCUME~1  D   ï¾1×°¬:÷   D o c u m e n t s   a n d   S e t t i n g s   ***   " />

印刷できない文字をすべて削除しました

4

5 に答える 5

1

Vista/Server08 を使用している場合は、アプリを実行する前に、昇格したプロンプトから sxstrace.exe コマンド ライン ツールを使用します。追加情報が得られる場合があります。

さらに、Windows イベント ログを確認すると、マニフェストの解析エラーが報告されています。

この質問に「regfreecom」タグを追加することもお勧めします。

于 2009-05-12T20:55:26.283 に答える
0

異なるバージョンの Visual Studio でコンパイルされたライブラリにリンクしていないことを確認することをお勧めします.. (それが使用していると仮定して)

これと非常によく似た問題が発生しました...同じエラーメッセージ...アプリケーションをVS2005からVS2008に移動した後。エラーは、VS2008 に移行していない別のソリューションで構築されたライブラリにリンクしていたためです。リリース バージョンは問題なく動作しましたが、デバッグ バージョンではこのエラーが発生しました。

于 2009-07-06T23:07:47.973 に答える
0

バージョン 0.6.7 以降、Make My Manifest は「奇妙な」文字と記号のエスケープをより適切に処理します。このバージョンは 0.6.6 からの変更点が少ないため、更新してもほとんどの人は問題を起こすことはありません。

新しいバージョンでは、大きな COM インターフェイスのバージョン番号もより適切に処理されるはずです。これは、インターフェイスのバイナリ互換性を管理するのに苦労している (または互換性を無視している) プログラマーを助けるはずです。

于 2009-06-20T20:52:08.967 に答える
0

以下は、 reg-free COM に関するMSDN記事のトラブルシューティングセクションからの抜粋です。Eugene の回答のように、Windows Server のイベント ログを確認することをお勧めします (おそらくVirtual PCを使用していますか?)。

最初に...登録済みサーバーで動作するクライアントを取得します。次に、サーバーの登録を解除し、エラー メッセージが予期したとおりであることを確認します。そして最後に...マニフェストファイルを作成して展開します。このように、トラブルシューティングの作業は、マニフェスト ファイルの構造に限定されます (そうする場合は、アセンブリ マニフェストを正しく埋め込むこともできます)。

登録不要の COM の問題をトラブルシューティングするときは、Windows Server 2003 のイベント ビューアが役に立ちます。システム イベント ログで、COM サーバーからのイベントを探します。Windows XP のイベント ログを確認することはお勧めしません...常にメッセージが含まれています...問題の特定には役立ちません。

于 2009-05-12T21:45:40.663 に答える
0

これがあなたの問題かどうかはわかりませんが、マニフェストを res ファイルに含める場合は、正確に 4 バイトで割り切れるサイズにする必要があると思います (理由は聞かないでください)。

于 2009-05-12T23:10:59.807 に答える