07.08.2001
IT
wininet.zip - 20 KB
14.08.2002
IT
Как известно, принцип "мы с Томарой ходим парой" весьма распространён в различных API, нужно не просто знать какие методы вызывать, но и в какой последовательности. В MSDN много примеров как закриптовать целый файл. Но, к сожалению, нет ничего о том как закриптовать просто строку или массив байт. Следующий класс позволяет восполнить данный пробел.
29.09.2001
IT
В данной статье приводится объяснение работы директивы #import компилятора Visual C++ и даны примеры её использования с MS Word, MS Excel, ADO DB и ActiveX Control.
28.06.2004
Odi$$ey
Как узнать HINSTANCE Dll, не по её имени, так как в текущем процессе есть 2 dll с одинаковым именем, но сами разные.
12.06.2006
IT
Добавил базовый перехватчик и несколько типовых аспектов на его базе: LoggingAspect, CacheAspect и CounterAspect. Хотел ещё сделать PermissionAspect, но там получается всё достаточно интимно и как сделать общее решение не понятно.
18.06.2006
Odi$$ey
Можно ли заставить редактор отображать вертикальную черту для колонки с 80-м символом?
29.04.2006
IT
Здравствуйте, Maxim S. Shatskih, Вы писали:

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

Лично я уже давно отношусь к ООП просто как к набору удобных, хорошо зарекомендовавших себя дизайн паттернов, которые экономят мне кучу времени. Как-то после первого года работы на C++, мой шеф заставил меня писать обратно на чистом C, якобы в целях какой-то там совместимости. Помню, ломка у меня тогда началась с первых же строк кода. И что забавно после завершения работы я обнаружил практически у всех моих методов наличие первого параметра с характерным названием this. Т.е. что я сделал? Правильно, использовал один из паттернов, традиционно применяемых в ООП. А виндузовые handlers ничего не напоминают? Ну, например...
11.02.2006
IT
Здравствуйте, xbit, Вы писали:

X> Лично я, тоже не могу в это поверить. Как можно сесть и сразу начать писать (как IT например) какой нибудь крупный (или средний) проект. Может объясните мне глупому ? Наверное для этого надо быть очень очень умным и иметь огромный опыт или наоборот быть идиотом


На самом деле, это просто. Очень умным быть не обязательно, главное не быть полным идиотом.

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

Проектирование как отдельная стадия очень даже имеет смысл, действительно имеет и действительно смысл, тогда, когда речь идёт о передаче знаний от одного человека другому. Но судя по постам eao197 этот кто-то другой — он сам.
15.07.2001
IT
Однажды я занимался проектом, главной особенностью которого было наличие большого количества типовых форм ввода и вывода. Что-то типа делопроизводства. Документы должны были заполняться данными из БД или другими данными, которые может предоставить программа. При этом было бы крайне желательно, чтобы шаблон документа мог разобраться с этими данными самостоятельно. Оказалось, что всем этим требованиям вполне удовлетворяет MS Office. В этой статье я попытаюсь это продемонстрировать.
02.02.2006
Odi$$ey
Здравствуйте, Игорь Вартанов, Александр Шаргин, Вы писали:

ИВА>Статья:

ИВА>Как добавить всплывающие подсказки для элементов управления диалога?

до кучи к WinAPI и MFC — как то же самое делается в WTL:

  • добавляем в данные диалога CToolTipCtrl (atlctrls.h):

    class CMainDlg : public CAxDialogImpl<CMainDlg>,
       public CWinDataExchange<CMainDlg>
    {
      ...
    private:
       CToolTipCtrl tooltip_;
       CEdit edit1;
       CButton CancelBtn_;
       CButton OkBtn_;
    };

  • в OnInitDialog() вставляем инициализацию tooltip_:

    [ccode]
    LRESULT CMainDlg::OnInitDialog( UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/ )
    {
    ...

    // создание тултипа
    tooltip_.Create( m_hWnd, rcDefault, NULL, WS_POPUP | TTS_NOPREFIX | TTS_ALWAYSTIP, WS_EX_TOPMOST );
    ATLASSERT( tooltip_.IsWindow() );

    //Связываем контролы с тултипами
    ATLVERIFY( tooltip_.AddTool( &CToolInfo( TTF_SUBCLASS,
  • <  1  …  24  25  26  27  28  29  30  > rss