воскресенье, июля 31, 2005

Офисные плагины

Новое по сравнению с ранее выставлявшимся:
  1. Добавлена возможность вывода списка плагинов в инспекторе Outlook.
    Реализовано только для наследников outlookPlugin. По умолчанию возможность отключена, включать надо в плагине атрибутом [ShowInInspector (true)] или установкой поля ShowInInspector = true; Проверить факт работы в окне Инспектора можно по значению логической переменной RunningInInspector.
  2. Добавлена возможность при установке выбрать приложения, в которых будут запускаться плагины (по умолчанию Word, Excel и Outlook выбраны).
  3. Добавлена возможность в файле конфигурации диспетчера указать приложения, в которые будут загружаться плагины при очередном старте (параметр <runin>, принимает значения * (для всех приложений) или Word, Excel и т.д.). Параметр может повторяться необходимое количество раз и может быть изменён только при использовании внешнего редактора.
  4. Добавлена возможность на пункте меню плагина выводить рисунки. Файлы рисунков (сам рисунок и маска) добавляются к проекту плагина в виде встраиваемых ресурсов (Bitmap размером 16*16). Имена файлов следует указать в переменных PictureBmpName и MaskBmpName в перегруженном методе InitializePlugin (по умолчанию используются значения " Picture.bmp" и "Mask.bmp" соответственно).
  5. Добавлена возможность в файле конфигурации задать произвольное количество путей к папкам с плагинами (параметр <path>). По умолчанию используется значение "OfficePlugins".
  6. Система переписана с использованием некоторых возможностей .NET v.2.0 и требует для работы установленной версии .NET Framework 2.0.50215.

Конкурс на Gotdotnet.ru

Получил на днях призы за заявки - VB.NET и VS 2003 - всё из себя лицензионное, хоть и устаревшее малость. Одно хорошо - к Студии Server 2003 приложен и SQL 2000 девелоперский. Можно с чистой совестью программки раздавать. И даже продавать, если кто купит.
А Бейсик Варьке отправить надо - поди, в нынешней продвинутой школе заставят программить чего - вот и пригодится.
 
Ну, и заодно вспомнил, что надо и сами разработки выкладывать - пришлось повозиться малость.
Музыкально-развлекушное почти не менял, а с Офисными плагинами поковырялся. Особенно с Outlook'овым, работающим и в Inspector'е - кривота жуткая. Зато научился вставлять текст в письма (даже в те, которые специально на редактирование не открыты пока). Надо будет развить как-нить эту линию.

понедельник, июля 18, 2005

FxCop

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

CommandBarButton.Picture

Часа 2 возился, чтоб изобразить картинку на кнопке в Ворде. Какой только фигни многомудрой не понаписано на эту тему....
Ё-моё. А всё оказалось достаточно просто.

Несколько строчек кода

string ns = this.GetType().Namespace;
Assembly CurrentAssembly = this.GetType().Assembly;
System.IO.Stream

imgStreamPic = CurrentAssembly.GetManifestResourceStream(ns+"." + "ConfigPicture.bmp"),
imgStreamMask = CurrentAssembly.GetManifestResourceStream(ns+
"." + "ConfigMask.bmp"
);
MyAxHost ax = new MyAxHost
();
stdole.
IPictureDisp
Pic = MyAxHost.IPictureDisp(Image
.FromStream(imgStreamPic)),
Mask =
MyAxHost.IPictureDisp( Image
.FromStream(imgStreamMask));
ConfigureButton.Picture = Pic;
ConfigureButton.Mask = Mask;


И простой класс

public class MyAxHost : System.Windows.Forms .AxHost
{
public MyAxHost() : base( "59EE46BA-677D-4d20-BF10-8D8067CB8B33"
){ }
public static stdole.IPictureDisp IPictureDisp(System.Drawing.Image
Image)
{
return ((stdole.IPictureDisp)(AxHost
.GetIPictureDispFromPicture(Image)));
}
}

И ConfigureButton имеет картинку.

SharePoint continued...

По просьбе - скриншоты:




Настройка поля формы.




Форма с использованием RTF-редактора FCKeditor.




Веб-часть со списком карточек.

среда, июля 13, 2005

Testing BlogJet

I have installed an interesting application - BlogJet. It's a cool Windows client for my blog tool (as well as for other tools). Get your copy here: http://blogjet.com/

"Computers are incredibly fast, accurate and stupid; humans are incredibly slow, inaccurate and brilliant; together they are powerful beyond imagination." -- Albert Einstein

������ ��-������ �� �����.

Хренотень - русский текст не постит, картинки не постит.

суббота, июля 09, 2005

Yukon

Поставил бету 3, пришедшую с 2005-й Студией. Нагрузил на него всё - счётчик трафика, SharePoint и проч.
Под SharePoint'ом задолбал вконец - памяти отъедает по 200-300 Мег, задумывается на 100% процессора на минуту-другую при простейших действиях. Мрак...
В итоге перенёс всё на старый добрый SQL 2000 sp3. Причём пришлось именно переносить - базы просто так через detach/attach уже не переставляются. За хрен так сделали, неясно. Как там другая функциональность, даже не пробовал.
Таблицы свои (трафик и др.) перегнал через DTS, а таблицы Sharepoint'а как-то хитро сделаны, что новый DTS обломался - пришлось новые базы заводить. Благо, никакого особого содержимого у меня там не было. Но целый вечер, считай, провозился.

ASP.NET

Пока ковырялся с SharePoint'ом, понял, что из всего .NET самое крутое - ASP.NET .
За всё время не нарисовал ни одной формы в студии или ещё как - всё только на C#.
Html не понадобился совсем (не считая совсем маленьких фрагментиков при рендеринге элементов). Правда, употребил бесплатную разработку, а там много html-ного.

SharePoint

Целый месяц, считай, провозился с этой фиговиной.

Если разобраться и вникнуть, то работать можно.

В итоге соорудил отдельный продукт - hse-списки. Точнее даже, формы, похожие на встроенные, но с расширенной функциональностью:



  • Выборка данных из разных списков, с разных WSS-сайтов на одном сервере.

  • Фильтрование данных для списков выбора по значениям полей формы.

  • Присваивание полям формы данных из полей источника данных.

  • Расширенный html-редактор (пристроил freeware FCKeditor).

  • Комбинирование полей в источнике для выбора (заказчику пока не показываю - много всяких следствий).