2015-11-27 40 views
0

我正在寻找Outlook 2007+加载项部署帮助。要在Win7 x64和Office 2013 x64计算机上进行部署,我添加了Visual Studio 2013本机COM Outlook加载项项目(.rgs文件)中的注册表项,然后将加载项库复制到加载项目录上客户机。 Outlook在启动时不加载加载项。尝试使用COM加载项对话框手动加载库会调用类似于c:\ Users \ 505hpc6z06 \ appdata \ Roaming \ Microsoft \ AddIns \ MyAddin.dll的错误,这不是有效的Office加载项。需要部署本地(C++)Outlook加载项的帮助

这些是我添加的注册表项(不在wow64注册表节点中)。代替%MODULE%,我放置了MyAddin.dll的绝对路径。像C:\用户\ 505hpc6z06 \应用程序数据\漫游\微软\加载项\生成MyAddIn.dll

HKCR 
    { 
     NoRemove CLSID 
     { 
      ForceRemove {EB824C19-380D-417E-A9E2-28E77B2F3026} = s 'CompReg Class' 
      { 
       InprocServer32 = s '%MODULE%' 
       { 
        val ThreadingModel = s 'Apartment' 
       } 
       TypeLib = s '{B0A51D8E-5E5A-447B-B935-765F3BC5C79F}' 
       Version = s '1.0' 
      } 
     } 
    } 
    HKCU 
    { 
     NoRemove Software 
     { 
      NoRemove Microsoft 
      { 
       NoRemove Office 
       { 
        NoRemove Outlook 
        { 
         NoRemove Addins 
         { 
          FromCloud.Connect 
          { 
           val Description = s 'My Outlook Addin' 
           val LoadBehavior = d 3 
          } 
         } 
        } 
       } 
      } 
     } 
    } 

这不是一个VSTO或.NET项目/插件。如何将本机COM Outlook加载项部署到客户机(win7,win8,win10,Outlook 2007+)?

回答

0

您的非托管(C++)加载项需要编译为64位才能在Office 64位中使用。简单地说,一个64位的程序不能使用32位的dll。

不管你写入的是什么,64位的outlook都不会加载32位的COM插件。在这里看到类似的问题:Using 32bit COM addin under MS Office 64 bit