Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > CreateObject


Автор: Temnozor 26.7.2002, 08:48
Код

Dim wd As Object
Set wd = CreateObject("Word.Application")

В Office 2000 из Excel'а все работает на Win2000.
На Win98 - нет.
Это почему?

Автор: M@xSoft 27.7.2002, 10:38
Создай ссылку на Word в Excel.
А потом используй объект word не используя CreateObject.  :baaa

Автор: Temnozor 27.7.2002, 11:00
Цитата(M @ 27.7.2002, 13:38)
Создай ссылку на Word в Excel.
А потом используй объект word не используя CreateObject.  :baaa

Создать ссылку? Каким образом?

Автор: Fantasist 30.7.2002, 11:00
А как не работает? Может там просто ворда нету.  :)

Цитата
Создать ссылку? Каким образом?


Наверное имелось ввиду библиотека типов. COM объект можно создавать используя позднее связывание это когда программа на момент компиляции не знает, с каким объектом она будет работать (вот в VB ты пишишь:
Код

Dim wd As Object
Set wd = CreateObject("Word.Application")

это и есть позднее связывание - компилятор не знает какой объект представлет из себя wd. ), а также ранее связывание - это когда компилятор знает о том что это за объект и как его использовать. Достигается это обычно с помощью библиотеки типов - библиотека, где указанны все объекты, их методы проперти и типы. Тогда ты будешь писать нечто:
Код

Dim wd As Word_Application
wd.open тра-ля-ля

Автор: Temnozor 31.7.2002, 07:03
Цитата(Fantasist @ 30.7.2002, 14:0)
А как не работает? Может там просто ворда нету.  <!--emo&:)

Word есть.
Точно тот же самый офис, что и на Win2000, полная установка. (Пробовал и Профессиональный, и Расширенный выпуск).
Проблема проявляется даже в том, что в Win98 выбраю меню, например, Excel'а <Вставка/Объект.../Документ Microsoft Word> документ не вставляется, а выдает сообщение об ошибке (черт, забыл какое)... Хотя один раз, по-моему, я вставил только не понять с помощью каких выкрутасов...
То есть, все глючит.
Ладно, поглядим...

Автор: Vit 31.7.2002, 15:32
Вроде как похоже реестр слетел, OLE неправильные ассоциации имеет. Попробуй переустановить офис.

Автор: Temnozor 1.8.2002, 06:43
Именно переустановками я и занимался. Игра называлась: "Найдите 10 отличий". Даже реестр импортировал. Возможно, Win98 глючный попался или еще что.
Придется пойти другим путем...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)