Michael Dunn. Руководство полного идиота... Часть III
От: Odi$$ey (перевод) Россия http://malgarr.blogspot.com/
Дата: 25.06.03 15:03
Оценка: 55 (1)
Статья :
Michael Dunn. Руководство полного идиота по написанию расширений оболочки — Часть III
Автор(ы): Michael Dunn
Дата: 31.05.2001


Авторы :
Odi$$ey (перевод)

Аннотация :
Active Desktop имеет одну новую особенность — когда вы перемещаете указатель мыши над объектом, появляется всплывающая подсказка — тултип, описывающая этот объект.
В третьей части рассматривается расширение QueryInfo, используя которое можно внести свою собственную информацию в строку описания для объектов оболочки.
Re: Michael Dunn. Руководство полного идиота... Часть III
От: falcon8 Россия  
Дата: 18.06.04 13:22
Оценка:
Помогите плз
Опять у меня проблены либо с головой либо с руками
c:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include\atlcom.h(1774): error C2259: 'ATL::CComObject<Base>' : cannot instantiate abstract class
with
[
Base=CSeansInfoShlExt
]
Re[2]: Michael Dunn. Руководство полного идиота... Часть III
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 19.06.04 05:02
Оценка:
Здравствуйте, falcon8, Вы писали:

F>Помогите плз

F>Опять у меня проблены либо с головой либо с руками
F>c:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include\atlcom.h(1774): error C2259: 'ATL::CComObject<Base>' : cannot instantiate abstract class
F> with
F> [
F> Base=CSeansInfoShlExt
F> ]

ты свое расширение пишешь? а пример из статьи компилируется?
Re[2]: Michael Dunn. Руководство полного идиота... Часть III
От: Нахлобуч Великобритания https://hglabhq.com
Дата: 19.06.04 08:28
Оценка:
Здравствуйте, falcon8, Вы писали:

F>Помогите плз

F>Опять у меня проблены либо с головой либо с руками
F>c:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include\atlcom.h(1774): error C2259: 'ATL::CComObject<Base>' : cannot instantiate abstract class
F> with
F> [
F> Base=CSeansInfoShlExt
F> ]

А ты все функции определил? Проверь ишшо раз...
HgLab: Mercurial Server and Repository Management for Windows
Re[3]: Michael Dunn. Руководство полного идиота... Часть III
От: Нахлобуч Великобритания https://hglabhq.com
Дата: 19.06.04 08:35
Оценка:
Здравствуйте, Нахлобуч, Вы писали:

Н>Здравствуйте, falcon8, Вы писали:


F>>Помогите плз

F>>Опять у меня проблены либо с головой либо с руками
F>>c:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include\atlcom.h(1774): error C2259: 'ATL::CComObject<Base>' : cannot instantiate abstract class
F>> with
F>> [
F>> Base=CSeansInfoShlExt
F>> ]

Н>А ты все функции определил? Проверь ишшо раз...


То бишь эта... Проверь, чтобы все методы интерфейсов от которых наследуешь были определены хотя бы так:

// IPersistFile
STDMETHOD(GetClassID)(LPCLSID) { return E_NOTIMPL; }
STDMETHOD(IsDirty)() { return E_NOTIMPL; }
STDMETHOD(Save)(LPCOLESTR, BOOL) { return E_NOTIMPL; }
STDMETHOD(SaveCompleted)(LPCOLESTR) { return E_NOTIMPL; }
STDMETHOD(GetCurFile)(LPOLESTR*) { return E_NOTIMPL; }
HgLab: Mercurial Server and Repository Management for Windows
Re[4]: Michael Dunn. Руководство полного идиота... Часть III
От: falcon8 Россия  
Дата: 20.06.04 13:54
Оценка:
Здравствуйте все !
Отвечаю сразу по порядку
Названия Классов переопределил под будушее своё расширение а так это просто пока пример из статьи
Реализации методов вроде все сделал как в примере хотя может ошибся с буквой и чтото не то определил
Проверял тысячу раз но может просто пригляделся
И попробую действительно определить сразу в объявлении по совету Нахлобуча
Завтра сообщу т.к. исходники на работе
Re[5]: Michael Dunn. Руководство полного идиота... Часть III
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 20.06.04 16:25
Оценка:
Здравствуйте, falcon8, Вы писали:

F>Проверял тысячу раз но может просто пригляделся


видимо, попробуй не трогать пример, а просто создать своё расширение по шагам из статьи.
Re[6]: Michael Dunn. Руководство полного идиота... Часть III
От: falcon8 Россия  
Дата: 21.06.04 19:09
Оценка:
Здравствуйте, Odi$$ey, Вы писали:

OE>Здравствуйте, falcon8, Вы писали:


F>>Проверял тысячу раз но может просто пригляделся


OE>видимо, попробуй не трогать пример, а просто создать своё расширение по шагам из статьи.


Я пересоздал проект но результат тотже все функции вроде реализую
Не знаю завтра если будет возможно пришлб исходнки если мэтры на это согласны
Re[7]: Michael Dunn. Руководство полного идиота... Часть III
От: Аноним  
Дата: 22.06.04 09:17
Оценка:
Ура !!!
Нашел GetInfoFlag(s)
Вот так два раза одно и тоже набрал
Но при объяснении самому себе нашёл
Спасибо всем!
Re: Michael Dunn. Руководство полного идиота... Часть III
От: falcon8 Россия  
Дата: 12.07.04 10:23
Оценка:
Здравствуйте, Odi$$ey !
Всё написал все работает
Но не могу зарегистрировать сервер на машине где нет MFC
Подскажите плз
Re[2]: Michael Dunn. Руководство полного идиота... Часть III
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 12.07.04 10:27
Оценка:
Здравствуйте, falcon8, Вы писали:

F>Всё написал все работает

F>Но не могу зарегистрировать сервер на машине где нет MFC
F>Подскажите плз

ну дык! если твоя dll MFC использует — ничего удивительного, что без него она не загружается
Re[3]: Michael Dunn. Руководство полного идиота... Часть III
От: falcon8 Россия  
Дата: 12.07.04 11:34
Оценка:
Здравствуйте, Odi$$ey!
Это конечно понятно, но как бы включить её в проект или
в исталюцию,?
Re[4]: Michael Dunn. Руководство полного идиота... Часть III
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 13.07.04 02:15
Оценка:
Здравствуйте, falcon8, Вы писали:

F>Это конечно понятно, но как бы включить её в проект или

F>в исталюцию,?

проблема -то в чем?
Re[5]: Michael Dunn. Руководство полного идиота... Часть III
От: falcon8 Россия  
Дата: 13.07.04 05:53
Оценка:
Здравствуйте, Odi$$ey, Вы писали:

OE>Здравствуйте, falcon8, Вы писали:


F>>Это конечно понятно, но как бы включить её в проект или

F>>в исталюцию,?

OE>проблема -то в чем?

Проблема в том что не знаю что надо чтобы поставить DLL (зарегистрировать) с MFC
на машину не устанавливая VS или установить по мелочи,а лучше чтобы скомпилить так чтобы все было включено в dll
Re[6]: Michael Dunn. Руководство полного идиота... Часть III
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 13.07.04 07:38
Оценка:
Здравствуйте, falcon8, Вы писали:

OE>>проблема -то в чем?

F>Проблема в том что не знаю что надо чтобы поставить DLL (зарегистрировать) с MFC

делаешь release-версию, тащишь ее на ту другую машину вместе с утилиткой depends.exe (ищи в составе студии или Platform SDK), запускаешь depends.exe и открываешь из него свою dll, тебе красеньким напишут чего не хватает

F>на машину не устанавливая VS или установить по мелочи,а лучше чтобы скомпилить так чтобы все было включено в dll


в свойствах проекта можешь установить статическую линковку с MFC
Re[7]: Michael Dunn. Руководство полного идиота... Часть III
От: falcon8 Россия  
Дата: 13.07.04 10:12
Оценка:
Спасибо!!!
Может так и программистом стану
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.