суббота, сентября 19, 2009

Белый пушистый сюрприз

Выяснилось, что при обращении по адресу наподобие http://server/site/folder/file.aspx?id=N вне зависимости от содержания файла file.aspx происходит переход на N-й файл в папке folder. Особенно умиляет диагностика, когда N превышает количество файлов – в адресной строке браузера написано то, что и должно быть, а на странице ошибок Шарепойнт – что такой страницы нет или она изменена другим пользователем.

image

А я таким способом пытался в веб-часть на странице передать ID элемента списка… В общем, хотелось бы на умника посмотреть, который такую гадость придумал. Причём и в новом WSS 4 наблюдается такое же поведение.

Technorati Tags: ,

понедельник, июля 20, 2009

Windows 7, установка “тяжёлого” софта

Цель - сделать рабочий компьютер для "жизни" и для разработки под Шарепойнт. И, конечно, для тестирования  Office 2010 и WSS 4.

Порядок установки пакетов (именно так, чтобы была свобода в размещении файлов программ, особенно VS):
  • Visual Studio 2008 + sp1
  • SQL Server 2008 + sp1
  • Office 2007 ultimate + sp2
  • SharePointDesigner 2007 + sp2
В итоге - офисные программы с такими примерно версиями:
 
8ba3ce6147560f91af903d891fc55de1
 
Синхронизация с моим мобильником Qtek работает и по OneNote, и по Outlook clap, системный диск содержит 29 Гб данных (включая 7 Гб под файлами hiberfil.sys и pagefile.sys). Можно приступать к упражнениям с Office 2010 и WSS 4. smile_speedy
 
Technorati Tags: ,

Windows 7, переустановка.

Всякие-разные эксперименты на системой привели к достаточно печальным последствиям. В частности, расстроилась синхронизация данных с мобильником – с OneNote синхронизируется, с Outlook – ни в какую. Google, правда, рассказал, что я тут не одинок, много народу от подобного страдает. Никакие попытки реанимации типа сноса/переустановки/ковыряня_реестра не помогли.

В общем, пришёл к выводу, что систему пора переустанавливать. Вдобавок пришло приглашение поучаствовать в тестировании новых версий Офиса и Шарепойнта, для чего расхристанная система вряд ли годится.

Действие 1 - Установка поверх существующей установки в попытке сохранить софт и настройки.

Метод испытанный поколениями, не было оснований не надеяться на удачный результат. Поэтому из существующей установки запустил дистрибутив, он бодро взялся устанавливаться в режиме upgrade, предупредив, правда, что потом не будет работать русский LangPack, Daemon Tools и Sharepoint. Но дальнейшие события сильно отличались от ожидаемых (основываясь на опыте подобных операций с Windows 95/98/2000/XP/2003).

Примерно час выполнялась операция типа "Сбор данных для переноса", что это за фигня действие - неведомо, но статус показывал, что набралось около 200 тыс. единиц этого.

Установка самой системы прошла достаточно быстро (собственно, как обычно), после этого примерно 2 часа шло восстановление “даннных для переноса”. Таких “данных” было около 800 тыс. (!?) единиц. Откуда взялось, неведомо...

После установки выяснилось, что зачем-то изменились права на диски с данными (точнее, с них удалены права для Everyone) и доступа к ним ни у кого нет. Пришлось пытаться "овладевать" ими и настраивать нужные права. В процессе оказалось, что глубоко лежащие папки почему–то брыкаются на предмет отсутствия доступа... После двухчасовой возни пришёл к выводу, что проще систему восстановить из бекапа и дополнить нужным софтом.

Однако фокус не удался smile_sad - установщик в процессе "update" что-то делал с диском, раздел диска стал каким-то не таким и используемая для бекапа программа Active Disk Image восстановления системного раздела сделать не сумела...heart_broken О бекапе системного диска/раздела – отдельно попозже.

Действие 2. - установка начисто и обустройство.

Запустил дистрибутив с компакта, его средствами удалил кривую партицию и в освободившееся место установил новый экземпляр Windows-7 RC.

Установку всякого софта делал, по преимуществу, не на системный диск - бекапить меньше да и из других Осей можно попользоваться:

  1. Сразу после установки запустил не получавшуюся ранее установку виртуальной машины для Windows 7. Установилась, но криво - мастер создания новых машин установился, но без ярлыка в меню: пришлось искать программку (нашлась в system32) и ярлык самому делать. Более пристальное рассматривание не выявило признаков работы с x64-системами, сделал испытанную штуку – установил Server 2008 x64 в VirtualBox 3.0.2. А там посмотрим.
  2. Установились драйверы/апдейты - много чего сразу притащило, в т.ч. русский LangPack.
  3. Установил необходимые для жизни мелочи - Avira Personal, Daemon Tools Lite, разные gadgets, nncron, ditto, gladinet, архиваторы, RoboForm, LastPass.
  4. Для Интернета и Шарепойнта - FireFox 3.5, Safari 4, IE7Pro, Digsby, Windows Live, WindowsLiveSync.
  5. Клиенты DynDNS и No-IP сервисов

В итоге система заняла на диске ок. 18 Гб (включая 7 Гб. pagefile и hiberfile).

Technorati Tags:

Органайзеры (OneNote и EverNote)

Вполне похожие по функциям и возможностям, не считая мелочей типа бедноватого редактора текста в Evernote. Даже бесплатностью похожи - с апреля 2009 г. OneNote 2007 входит в бесплатный пакет с Sharepoint Designer 2007. Как дальше будет, посмотрим.

Но есть у каждого крупные недостатки, компенсируемые, впрочем,  функциональностью другого.

OneNote:

Нет возможности централизованного хранения данных на сервере. Компенсируется возможностью EverNote импортировать заметки из OneNote.

EverNote:

В мобильном клиенте (по  крайней мере, для WM) отсутствует возможность регулировать объём синхронизации данных - не нужна на телефоне вся база (с картинками, которые там и не рассмотреть). Из-за этого пришлось даже от этого клиента отказаться, функции заметок OneNote аналогичны (правда, пользоваться удобнее клиентом EverNote – на кнопки нажимать нужно заметно меньше)

Technorati Tags:

воскресенье, июля 19, 2009

Логины блогов в Writer’е

Сидят в реестре в подключах ключа
HKEY_CURRENT_USER\Software\Microsoft\Windows Live\Writer.
Без паролей, правда, но это проще, чем вспоминать все адреса. Можно сохранить в файл и сохранить где-нить – на SkyDrive, в EverNote и т.д. При всяких авариях достаточно импортировать сохранённое, а при отправке ввести пароль…

Ну, не придумали более пристойной архивации этого дела… blacksheep

Technorati Tags:

понедельник, июля 13, 2009

Sharepoint и экономическая “школа”

Больше года работы по внедрению MOSS 2007 в ставшей вдруг, неизвестно почему, известной РЭШ с показательным окончанием... thumbs_down

четверг, июля 02, 2009

Google Writer

Пощупал, что такое "Документы Google".
Для пробы опубликовал описание "Картотеки PSI". Сначала загрузил как docx, оно тут отобразилось. Естественно, вордовские рисунки отобразились никак, пришлось вставить png-рисунок.
Потом выяснилось, что можно постить в блог, что и сделал.

Слабовато, конечно. Но если нет другого, сойдёт.      -Konstantin 02.07.09 3:10


среда, июня 10, 2009

Windows Vista x64 ended

Окончание мыльной оперы (предыдущие серии здесь, здесь, здесь, здесь, здесь и здесь) с Windows Vista в главной роли, растянувшейся почти на 2 года. Сказать по-правде, к концу жизни Vista стала вполне пристойной системой, на ней получалось выполнять всю нужную мне работу. Некоторые глюки, в то же время, так и остались неизлеченными (неизлечимые?) даже после установки sp2 rc – самые досадные из них с IE8 и с Visual Studio 2008 (sp1 установить не получается, снести Студию можно, установить снова – нельзя smile_party).

После выхода Дистрибутива с интегрированным sp2 решил применить испытанное безотказное оружие – установка поверх имеющейся версии. Во всех предыдущих версиях Windows средство действовало безотказно, но здесь случилась осечка – за время пути мыльной оперы собачка смогла подрасти аппетиты системы выросли и она захотела 16 Гб свободного места для выполнения обновления (в начале эпопеи хотела 7 Гб). Если учесть, что и с требованиями к размеру дисков для установки изготовители промахнулись минимум в два раза, а я их цифру увеличил всего в полтора, то больше 10 Гб освободить не получилось. Пришлось записать дистрибутив на болванку, снести все обломки и установить Vista x64 sp2 начисто.

После установки и загрузки выяснилось, что работает система заметно быстрее, на уровне “семёрки”. Так что, если та будет продолжать глючить, есть куда вернуться. fingerscrossed

Technorati Tags:

понедельник, июня 01, 2009

Windows 7, continued.

Ещё в первой серии нашего мыла экспериментов c Windows “se7en” поставил предлагаемую для “семёрки” версию Virtual PC – она вполне себе работала, однако поствила в мои виртуалки собственные дополнения, которые не сильно понравились VPC 2007 в Висте. Поэтому при втором подходе к снаряду второй установке и настройке поставил старую виртуалку, чтобы была совместимость в двух системах (а сильно рекламируемый режим XP-совместимости мне вовсе и не нужен).

Теперь, когда с Вистой решил отношения прекратить, для порядка попробовал поставить “родную” семёрочную виртуалку. Не тут-то было, ставится, требует перезагрузки, на загрузке начинает делать какие-то действия и обламывается. В системном логе сиротливое сообщение “Ошибка установки: не удается установить следующее обновление из-за ошибки 0x8007054f: Обновление для ОС Windows (KB958559).” мало чего объясняет smile_sad. Ну, и привет.

Technorati Tags:

пятница, мая 22, 2009

Горе от ума

Неплохой набор средств для изготовления РП в Sharepoint Designer содержит, в частности, средства для манипуляций разрешениями на элементы списков (библиотек). Эти средства вполне успешно были применены в проекте год назад, однако при попытке использовать их на сервере комьюнити выяснилось, что назначение разрешений работает только в случае Windows-пользователей. Для пользователей с LiveID-аутентификацией назначение разрешений заканчивается ошибкой smile_omg.

Причина обнаружилась в фрагменте кода, выполняющем поиск пользователя по имени.

if (SPUtility.IsLoginValid(site, userOrGroup)) {
myUser = site.RootWeb.EnsureUser(userOrGroup);
}

Понятно, что авторы при помощи метода IsLoginValid пытались избавиться от обработки исключений smile_shades, но в Шарепойнте так много действий построено на обработке исключений, что эта попытка выглядит ловлей мелких насекомых. Хуже того, IsLoginValid, похоже, не находит LiveID-пользователей вовсе smile_baringteeth. Выяснилось, что вполне можно было обойтись и без этого метода:

try {
myUser = site.RootWeb.EnsureUser(userOrGroup);
} catch {}

В этом случае оба типа пользователей благополучно находятся и весь процесс назначения разрешений работает как ожидалось. thumbs_up

Technorati Tags: ,

вторник, мая 19, 2009

Visual Studio 2008

Очень хороший продукт, много чего может. И работает достаточно быстро и надёжно.

Работает, пока что-нибудь не произойдёт. У меня это "что-то" произошло после установки MSDN для Visual Studio sp1 - как-то странно стали расползаться окна в Студии, перестали загружаться пакеты и кое-что по мелочи. Никакие "восстановительные действия" ни к чему хорошему не привели.
После полного удаления Студии и установки с самого начала она, в общем-то, заработала, однако sp1 установить больше не удаётся по причине зацикливания – установщик SPInstaller.exe намекает, что "You must first use Microsoft Visual Studio Patch removal tool before installing Visual Studio 2008 SP1. The tool will verify Visual Studio integrity and remove previous Visual Studio 2008 updates or pre-release software". Запуск помянутого инстрУмента VS2008-PatchRemovalTool-x86.exe проходит "успешно", но SPInstaller.exe при следующем запуске снова намекает на своё... Найденные "рецепты" для исправления проблем ничего не дают.
При этом установить MSDN, с которого всё и началось, вполне можно...

Получается какая-то неремонтопригодная штуковина... Не припомню что-то других продуктов, которые можно снести и обратно не установить. Надеюсь, что после полной переустановки ОС фокус, всё же, получится, но я это проделывал совсем недавно, чуть больше недели назад, и энтузиазма повторить эпопею пока не испытываю.

P.S. Эти приключения – на Windows 7, на Vista – тоже приколы со Студией, но другие…

суббота, мая 16, 2009

Сюрпризик от GetSiteData

Есть такой полезный метод SPWeb.GetSiteData, собирающий данные по спискам/библиотекам, объединённым, например, наличием одинаковой колонки. Всё хорошо до тех пор, пока эта колонка не имеет тип LookUp с множественным выбором. Метод для таких колонок просто не возвращает никаких данных, без каких-либо сообщений.

Исправляется глюк копированием (например, простеньким SPD РП) содержимого в колонку типа “однострочный текст”.

Technorati Tags: ,

среда, мая 13, 2009

Windows 7, continued.

После регенерации, вернее, установки по-новой, “семёрка” не стала брыкаться, а спокойно заработала. После двух дней – праздники же, не очень до неё было – новой жизни решил обустроиться по-серьёзному. Office 2007 Ultimate, Sharepoint Designer 2007, Visual Studio 2008 Team Suite, SQL Server 2008 Developer Edition, Windows Sharepoint Services 2007 sp2 – весь этот зверинец пришлось запустить, не обойтись без него при работе с Шарепойнтом.

По ходу дела выяснилось, что Visual Studio надо бы устанавливать до Office (он без всякого спросу устанавливает какой-то огрызок от Студии 2005 smile_devil). В дальнейшем основная Студия устанавливается в папку, связанную с той, куда установлен огрызок, а иногда надо бы порулить путями, куда ставить. То, что Студию надо ставить и до SQL Server’а, выяснилось ещё раньше (SQL устанавливает свою версию Студии, не обязательно совпадающую с запланированной к установке).

Для установки Шарепойнта использовался испытанный Bamboo-способ, модифицированный для борьбы с “семёркой”. При использовании этого способа основное – не забыть включить отключённый сервис обратно и перезагрузиться. При выключенном сервисе “Центр Администрирования Шарепойнта” при запуске обычным порядком, через ссылку в “Administrative Tools”, выглядит довольно непривычно.

В итоге всё это хозяйство заработало исправно и, хочется верить, достаточно шустро (измерять, естественно, лениво smile_wink). Вот уже пятый день… Тьфу-тьфу smile_embaressed

Всё прочее хозяйство, нужное для жизни (Пунты-Торренты и Daemon Tools’ы, Аськи-Messenger’ы, Picasa-Gallery…) тоже заработало, в основном. Несколько гаджетов, ставших привычными в Висте, потерялись или не заработали, но нашлись другие, похожие, или получилось заменить системными средствами.

Technorati Tags: ,

вторник, мая 12, 2009

Бессмертное…

Почти 2 года назад обнаружилась смешная глюковинка, легко поддающаяся исправлению. Ан нет – и во втором сервиспаке глюковинка на месте.present

Technorati Tags: ,

понедельник, мая 11, 2009

Windows 7, continued. Regeneration.

Почитал для начала статьи про восстановление предыдущих версий ОС (наподобие вот этой) и решил попробовать сэкономить ранее потраченное на установку время. Предлагаемый метод восстановления вылился в такой вот командный скрипт (запускать его надо по методике из статьи после перехода на диск, где надо выполнить манипуляции):

rem backup current OS
move /y \windows \Windows.srv\
move /y "\Program Files" \Windows.srv\
move /y "\Program Files (x86)" \Windows.srv\
move /y \Users \Windows.srv\
move /y \ProgramData \Windows.srv\

rem restore previous OS
move /y \Windows.old\windows \
move /y "\Windows.old\Program Files" \
move /y "\Windows.old\Program Files (x86)" \
move /y \Windows.old\Users \
move /y \Windows.old\ProgramData \
После выполнения скрипта система вполне себе нормально загружается и выглядит как взаправдашняя. Вместе с глюками, побудившими от неё отказаться. Радости от этого немного, поэтому решил воспользоваться старым казачьим способом – установить систему поверх себя в надежде получить функционирующую ОС без потери настроек. Способ применялся для разных Windows, начиная с версии 3.11, и практически всегда давал приличные результаты.
Здесь же приличного результата не получилось – несмотря на долгое время работы (около полутора часов с тремя или четырьмя перезагрузками) никакого улучшения в работе не обнаружилось. Может, “благодаря” использованному способу переноса настроек – судя по сообщениям во время установки применялся встроенный способ “Windows Easy Transport”.
Собственно, всё как обычно – попытка сэкономить время приводит к его дальнейшему непроизводительному расходу. smile_thinking Результат - вторая “чистая” установка на пустой раздел. Как и прежде – всё чудесно, очень быстро и красиво…smile_wink


Technorati Tags:

пятница, мая 08, 2009

Windows Server 2008 R2

В принципе, это серверный вариант Windows 7, но пока называется вот так. Правда, при ближайшем рассмотрении выясняется, что многое, относящееся у пользовательскому интерфейсу, по дороге от “семёрки” к серверу куда-то делось. Для сервера, конечно, мелочь, но у меня-то цель была получить рабочую станцию для разработки под Шарепойнт. Думаю, не мне одному такя станция нужна…

Установка происходит достаточно гладко и быстро, ранее установленная Windows 7 сметена в папку Windows.old и не мешается. Сложности начались дальше. С самого начала выяснилось, что сервер не очень заботится о поддержке видеосистемы и считает, что 1024*768 – сойдёт. Пришлось насильно скармливать драйверы от Висты, после чего интерфейс стал радовать глаз. Но не до конца – самые интересные фенечки как раз и потерялись. Все прочие перенастройки сервера в рабочую станцию прошли нормально и можно было согласиться с отсутствием мелочей.

Дальше выяснилось, что не включается режим hibernate (режима sleep, похоже, не предусмотрено вовсе) – препятствует этому включённый Hyper-V. Обе этих фишки нужны мне обязательно – у нас часто выключается свет и на shutdown батарей может не хватить, а всякие сомнительные вещи (типа сервиспаков и прочих обновлений Шарепойнта) предпочитаю проверять на виртуальных машинах.

Собственно, на этом любовь с  сервером закончилась smile_thinking и пришлось приступить ко второй серии мыльной оперы экспериментов с “семёркой” (вылечить болячки Висты пока не удаётся smile_sad).

Technorati Tags:

среда, мая 06, 2009

Windows 7

Поставил “на попробовать” эту “семёрку” ещё в январе, когда выпустили публичную бету. Особого впечатления не произвела, да и особых причин уползать с Висты не было – она нормально работала, выполняла нужные мне функции… Читал периодически всякие отзывы, иногда заходил, потихоньку экспериментировал…

Выпуск RC семёрки и фокусы ИЕ в Висте поторопили начать более плотное изучение нового чуда.

Русскую версию поставил на старую машину – её поленились собрать в x64-варианте, поэтому пускай на слабом железе и сидит, тем более, нужна для тестирования русификации (которую, по-правде, тоже поленились…).

На основную машину поставил английскую x64-сборку с прицелом сделать её основной рабочей системой (кстати, в опросе на connect такой вариант использования предусмотрен). Ставиться поверх имеющейся Висты категорически отказалась – из-за недостатка места на диске (15 Гб хочет) и из-за несовместимости некоторых установленных программ, Шарепойнта, в частности. Последнее обстоятельство несколько насторожило, но в запасе оставался вариант использования Шарепойнта на виртуальном сервере.

Собственно, началось всё достаточно гладко – быстрая установка, быстрый старт, распознанные устройства (кроме одного, которое в Висте вполне известно). Интерфейс местами интересный, некоторые фички вполне практичные и быстро находят применение. В общем, первые 3 часа – всё чудесно.

Дальше – хуже. При установке Офиса выяснилось, что Live Addin для Outlook работает как-то не так (или не работает вовсе – в меню его нет), в результате чего почту Hotmail в Outlook подключить можно, но авторизация там проходит далеко не с первого раза, что сильно задалбывает. Через клиента Windows Mail подключиться к news-группам connect так и не удалось – не авторизуется на сервере…

В интерфейсе полезли какие-то глюки – иногда вокруг окон проступает полоска с фоновым рисунком. Полоска довольно широкая и моргает – очень противно, хоть и стирается мышкой.

Доконала “зацикленная авторизация” на почте Hotmail – не войти никак, привычное “лечение” не помогает. Кроме того, выяснилось, что Bamboo-установка Шарепойнта не удаётся – пришлось системку выбросить и начать эксперименты с серверным вариантом (называется до сих пор Windows Server 2008 R2).

Technorati Tags: ,

IE задолбал

Я, собственно, не про то, что IE8 плохой – нет, он заметно лучше предыдущих версий. С “конкурентами” даже сравнивать не хочу – давно пришёл к выводу, что всякому своё. Поэтому сайты, где преобладает технология Microsoft (почта Hotmail, MSDN и т.д.), смотрю IE, почту GMail – Хромом. Так и висит постоянно несколько разных браузеров. Но жить можно. smile_secret

Но IE, всё же, задалбывает больше остальных – может, потому, что пользуюсь им больше… smile_angry

В течение последних нескольких месяцев периодически (раз в 7-10 дней) “включается” глюк “зацикленная авторизация” – при попытке зайти на страницу Live (напр., http://home.live.com) после ввода LiveID начинается бесконечный цикл “авторизации”, при этом вход на другие Live-страницы проходит нормально. Лечится глюк удалением куков, всех или выборочно, со словом “live” в имени файла.

Последний по времени фокус описан вот здесь. Не вылечился пока никак – ни переустановкой, ни чисткой кеша и реестра, ни установкой на Висту sp2 RC. Так и приходится, если нужно написать нормальный пост, запускать IE8 x64. thumbs_down

Technorati Tags: , ,

пятница, апреля 24, 2009

Vista sp2 installing

При размещении системных файлов на других дисках (на системном - softlink) получается вот такой результат:

vista sp2rc      vista sp2rc ru

А всего-то и было, что папка Microsoft Games была перенесена на другой диск для экономии места.

 

Technorati Tags: , ,

суббота, февраля 28, 2009

PS и WSS 3

Продолжаем наши танцы эксперименты. В этот раз решаем простую задачку автоматического утверждения содержимого элемента списка. Решаем в технике использования обработчиков событий, т.к. в нём скрипты работают в контексте текущего пользователя и нет необходимости проверят его разрешения. Скрипт получается совсем простой:

   1:  function ApproveItemContent {
2: if (-not $list.EnableModeration ){ return; }
3: if ($item.ModerationInformation.Status –eq
Microsoft.SharePoint.SPModerationStatusType]::Approved `
4: -or `
5: $item.ModerationInformation.Status –eq
Microsoft.SharePoint.SPModerationStatusType]::Denied)
6: { return; }
7: $this.DisableEventFiring()
8: try{
9: $item.ModerationInformation.Status = `
10: [Microsoft.SharePoint.SPModerationStatusType]::Approved;
11: $item.ModerationInformation.Comment = 'Approved with PS-script by user '
12: + $user.Name + ' at ' + [System.DateTime]::Now.ToString();
13: $item.SystemUpdate();
14: }catch{
15: # не очень и хотелось...
16: }
17: }

Эту функцию записываем в конец заготовки обработчика и ставим её вызов в обработчики добавления и обновления:


function ItemAdded{ ApproveItemContent; }
function ItemUpdated{ ApproveItemContent; }
Не обошлось, как водится, без сюрпризовsmile_nerd: на списке вики-страниц ( узел создавался с шаблоном “вики”) скрипт работает наполовину – комментарий (строка 11) записывается, а статус (строка 9) – нет. При расследовании выяснилось, что исправляет дело замена SystemUpdate() на Update() в строке 13.

Technorati Tags: ,