word插件应该怎么在注册表中注册,
HKEY_CURRENT_USER\Software\Microsoft\Office\<AppName>\Addins\<AddInProgID>
这里面的AddInProgID是什么参数,现在我的插件文件是project2.dll,里面的类是AddIn
我应该怎么写这个键值
HKEY_CURRENT_USER\Software\Microsoft\Office\<AppName>\Addins\<AddInProgID>
这里面的AddInProgID是什么参数,现在我的插件文件是project2.dll,里面的类是AddIn
我应该怎么写这个键值
HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins\Project2.AddIn
键值中有LoadBehavior = 3
但是这个插件并没有启动起来
是不是有错?是不是应该是project2.addin
TDemoWordAddinFactory = class(TAutoObjectFactory)
public
procedure UpdateRegistry(Register: Boolean); override;
end;procedure TDemoWordAddinFactory.UpdateRegistry(Register: Boolean);
var
Reg : TRegistry;
Section : string;
begin
inherited UpdateRegistry(Register);
Section:='Software\Microsoft\Office\Word\Addins\DemoOfficeAddin.DemoWordAddin';
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_LOCAL_MACHINE;
if Register then
begin
Reg.OpenKey(Section,True);
Reg.WriteString('FriendlyName', 'Demo Word Addin');
Reg.WriteString('Description', 'Demo Word Addin');
Reg.WriteInteger('LoadBehavior', 3);
Reg.WriteInteger('CommandLineSafe', 1);
end
else begin
Reg.DeleteKey(Section);
end;
finally
Reg.Free;
end;
end;2.不用原来的类工厂注册,调用新的类工产来注册
initialization
TDemoWordAddinFactory.Create(ComServer, TDemoWordAddin, Class_DemoWordAddin,
ciMultiInstance, tmApartment);OFFICE可能会禁用出错的ADDIN,可以在帮助->关于->被禁用项目里查看你的ADDIN是否被禁用了.
调试程序时,有可能注册后OFFICE并不能正确加载ADDIN,可以注销当前用户或重启再试