0

Delphi クライアント (exe) と .NET COM dll があり、dll を登録せずに実行しようとしています。こちらの手順に従いましたが、私の Delphi クライアントは正常にコンパイルされます。ただし、私は Delphi の専門家ではなく、Deplhi でオブジェクトを使用する方法を理解できません。リンクされている Skype4COM.dll の例を取り上げると、Delphi 7 から dll とそのメソッドにアクセスするにはどうすればよいですか? 前もって感謝します。

4

1 に答える 1

0

これは答えではありませんが、コードサンプルを含めたいのですが、これがスタックオーバーフローで知っている唯一の方法です。

お役に立てるかもしれませんが、SxS に展開した VB6 プロジェクトの 1 つに MS Flex Grid コントロールへの参照をどのように含めたかのサンプルを次に示します。クライアントは AbbottMST.exe、COM サーバーは MSTEngine.dll です。これは、クライアント マニフェスト ファイル AbbottMST.exe.manifest から抜粋したサンプルです。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    <assemblyIdentity type="win32" name="AbbottMST" version="4.0.0.7"/>
    <dependency>
        <dependentAssembly>
            <assemblyIdentity type="win32" name="MSTEngine" version="4.0.0.4"/>
        </dependentAssembly>
    </dependency>
    <file name="msflxgrd.ocx">
        <comClass clsid="{6262D3A0-531B-11CF-91F6-C2863C385E30}"
            tlbid="{5E9E78A0-531B-11CF-91F6-C2863C385E30}"
            progid="MSFlexGridLib.MSFlexGrid.1"
            description="Microsoft FlexGrid Control, version 6.0 (SP6)"
        />
    </file>
</assembly>

マニフェストを含める場合は、サイド バイ サイドでデプロイする必要があることに注意してください。このプロジェクトでは、SxS をサポートしない Windows 2000 用の通常の登録済みバージョンと、XP 用のサイド バイ サイド バージョンの両方が必要でした。このマニフェストがバインドされている EXE のバージョンは、非 SxS インストールでは実行されません。(私たちが知らない魔法の呪文があるかもしれませんが、それは私たちの経験でした. )

于 2012-05-01T05:55:21.180 に答える