现在的位置: 首页 > 综合 > 正文

通过cab文件下载C# ActiveX组件

2014年03月09日 ⁄ 综合 ⁄ 共 1175字 ⁄ 字号 评论关闭
 

常用于c++中的Registerserver=Yes,简单的调用regsvr32来注册的情况对C#没有用。

所以,我们需要使用代码来完成此工作。

在这里,我们主要解决如何创建CAB文件并布置到电脑上。为此,首先我们创建一个带COM接口的c#应用程序,以下是简单的示例:

using System;

using System.Text;

using System.Windows.Forms;

using System.Collections.Generic;

using System.Runtime.InteropServices;

namespace DownloadedApp

{

    [Guid("D1E40FCE-E964-4dfd-B07E-BDE49D3519A1")]

    interface IDownload

    {

        void InvokeMethod();

    }

    ///

    /// COM exposed .NET class.

    ///

    [ClassInterface(ClassInterfaceType.AutoDual)]

    [Guid("A47C22B1-3CC3-45bc-801E-3FCC4FFD3E45")]

    public class Download : IDownload

    {

        ///

        /// COM exposed .NET Method.

        ///

        public void InvokeMethod()

        {

            MessageBox.Show("Clientside component invoked successfully!!",

              "Clientside component", MessageBoxButtons.OK,

              MessageBoxIcon.Information);

        }

    }

}

 

现在创建一个MSI安装(Setup project),并将这个COM应用程序设置为项目输出(application folder->右击,->add->project output,在弹出的窗口中选择第一步创建的应用程序)。并将primary output from DownloadedApp(active)register属性改为vsdrpCOM.

 

使用InetSDK CABARC工具,我们可以创建cab文件,并在CAB中包含downloadDeployer.msiINF文件。这个工具可以从微软网站免费下载(http://support.microsoft.com/kb/310618)。

原文见:

http://www.codeproject.com/KB/cs/C__Deployment.aspx

 

 

【上篇】
【下篇】

抱歉!评论已关闭.