Описание ошибки: Разработав на машине с установленным SharePoint 2010 консольное приложение, использующее клиентскую модель SharePoint, решил попробовать запустить его со своей рабочей станции с установленной Windows 7 x64. И ужас – приложение вывалилось с ошибкой при запуске. Причем даже не дойдя до этапа выполнения, т.к. обертка try-catch не сработала.
В журнале Application операционной системы было вот что:
Имя сбойного приложения: GetSPObjects.exe, версия: 1.0.0.0, отметка времени: 0x551936cc
Имя сбойного модуля: KERNELBASE.dll, версия: 6.1.7601.18409, отметка времени 0x53159a86
Код исключения: 0xe0434f4d
Смещение ошибки: 0x0000c42d
Идентификатор сбойного процесса: 0x%9
Время запуска сбойного приложения: 0x%10
Путь сбойного приложения: %11
Путь сбойного модуля: %12
Код отчета: %13
Исправление: Для исправления ошибки необходимо поместить в GAC (C:\Windows\assembly) библиотеки Microsoft.SharePoint.Client.dll и Microsoft.SharePoint.Client.Runtime.dll.
Листинг простого приложения для примера ниже:
using System;
using System.Text;
using Microsoft.SharePoint.Client;
using System.IO;
namespace GetSPObjects
{
class Program
{
static void Main(string[] args)
{
try
{
ClientContext cc = new ClientContext("http://sharepointdev/dc/");
Web oWebsite = cc.Web;
cc.Load(oWebsite);
cc.ExecuteQuery();
Console.WriteLine(oWebsite.Title);
}
catch (Exception ex)
{
string LogFilePath = "log.xml";
TextWriter logfile = new StreamWriter(LogFilePath);
logfile.Write("Ошибка: " + ex.Message);
Console.WriteLine("Ошибка: " + ex.Message);
//Console.ReadKey(true);
logfile.Close();
}
finally
{
Console.WriteLine("Press any key to continue");
Console.ReadKey(true);
}
}
}
}


