spsecurity.runwithelevedprivileges在Windows Server 2003/sp2007上工作,而不是2008/sp2010
-
16-10-2019 - |
题
我在C#中使用SharePoint中有此简单的代码:
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPSite site = new SPSite("http://localhost:333");
});
当我在SharePoint 2010上执行Windows Server 2008时,我会收到此错误:
通过CLSID {BDEADF26-C265-11D0-BCED-00A0C90AB50F}检索COM类工厂,由于以下错误:80040154。
当我在SharePoint 2007上在Windows Server 2003上执行它时,它运行良好。
Windows或SharePoint中有问题吗?
如何摆脱此错误?
解决方案
您的代码是否为64位编译?
其他提示
尝试在ISAPI文件夹下(Moss 2007)或SharePoint root(SharePoint 2010)文件夹下方注册位于ISAPI文件夹下的OWSSVR.DLL文件。这是一个com库,您需要使用“ regsvr32” dll'命令进行注册。
Goto您的Visual Studio解决方案属性 - >将平台目标设置为build Option的ANYCPU。它将解决这个问题。
我尝试了以下步骤,并为我解决了上述错误。
- 转到解决方案资源管理器,然后按Alt+ Enter
- 选择构建选项中的任何CPU,然后取消选中说的框,更喜欢32位。
- 保存更改并构建解决方案。
现在,您应该能够运行该程序。
希望这可以帮助。
对于SP2010,请参考Microsoft.sharepoint.dll,来自14 Hive。您必须重建该项目64位