我正在 64 位计算机上编写 SharePoint 2013 的控制台应用程序。当我尝试执行程序时,我收到此错误:
"Microsoft SharePoint 在 32 位进程中不受支持。请验证您是否在 64 位可执行文件中运行。
如果您过去遇到过此问题,请告诉我并可以提供帮助。谢谢!
您是否检查了项目的属性?(解决方案资源管理器,右键单击项目,单击属性)在构建选项卡上,检查您是否选择"任何CPU"。
这对我有用:
在Visual Studio中:TOOLS>OPTIONS>Projects and Solutions>WEB PROJECT和对网站和项目使用64位版本的IIS Express
我在运行单元测试时遇到了这个问题(嗯,"单元测试"服装中的集成测试)。更改单元测试项目的目标只是使测试从测试资源管理器中消失。可以将测试(至少在VS2013+中)作为x64环境运行。
在 Visual Studio 中,选择"Test > Test Settings > Default Processor Architecture > x64
https://msdn.microsoft.com/en-us/library/ee782531(v=vs.120).aspx
有时,如果"首选 32 位"灰显,并且您的平台目标已经是"任何 CPU",则问题是 IIS Express 不是 32 位。
解决方案是将解决方案的 Web 服务器更改为本地 IIS。
本博客更详细地详细介绍了这些步骤:平台不支持 运行 Visual Studio Web 应用程序时的异常
对我有用的是更改注册表项:
HCUSoftwareMicrosoftVisualStudio12.0WebProjectsUse64BitIISExpress
到 1
,如下所示:
https://rule30.wordpress.com/2015/06/22/microsoft-sharepoint-is-not-supported-in-32-bit-process-please-verify-that-you-are-running-in-a-64-bit-executable/
我遇到了同样的问题。"构建"选项卡具有选项Any CPU
,但仍然无法正常工作。
我已明确选择x64
作为平台目标,并且应用程序工作正常:)
这是因为在用于某些自动化的控制台应用程序中迁移到 SharePoint 2013 后对 Microsoft.Shareppoint.dll 的引用无效
只需在下面添加Microsoft.Shareppoint的地址.dll
正确
C:Program FilesCommon Filesmicrosoft sharedWeb Server Extensions15ISAPIMicrosoft.SharePoint.dll
在 UAT 中创建空的 SharePoint 2013 项目后,您可以找到对此正确 DLL 的引用。
我在Windows 2012R2 UAT和Visual Studio 2015 Update 1中收到此错误,当时我的引用错误地指向在GAC中找到的dll。
不對
C:WindowsMicrosoft.NETassemblyGAC_MSILMicrosoft.SharePointv4.0_15.0.0.0__71e9bce111e9429cMicrosoft.SharePoint.dll