Консольное приложение с клиентской объектной моделью SharePoint падает при запуске с клиентской машины. Как исправить

Описание ошибки: Разработав на машине с установленным SharePoint 2010 консольное приложение, использующее клиентскую модель SharePoint, решил попробовать запустить его со своей рабочей станции с установленной Windows 7 x64. И ужас – приложение вывалилось с ошибкой при запуске. Причем даже не дойдя до этапа выполнения, т.к. обертка try-catch не сработала.

В журнале Application операционной системы было вот что:

Ошибка запуска приложения с клиентской объектной моделью SharePoint

Ошибка запуска приложения с клиентской объектной моделью SharePoint

Имя сбойного приложения: 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);
            }
        }
    }
}

 


Комментариев нет »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment







MarkiMarta.ru. Записки отца-программиста" с 2009 г.
Категория информационной продукции 18+
Яндекс.Метрика