Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: GETOBJECT & CREATEOBJECT! Добавлено: 14.07.03 15:26  

Автор вопроса:  Anatoly

Может кто сталкивался...

Проблема заключается в след.: У клиента на машине установлен Офис 2000 + SP3 +IExplorer6.0! Чего он еще там наустанавливал я не знаю!

Короче суть проблемы - не работает GetObject и CreateObject! Не работает так: Пишу простую прогу из excel

sub x

msgbox "TEST!"

xxx=createobject(, Word.Application)

' xxx=GetObject(, Word.Application)

msgbox err.description

end sub

При этом в это коде будет работать только msgbox "TEST!"! Далее, если трасернуть код, то msgbox пройдет нормально,а вот createobject не сработает, т.е. не будет никакой ошибки, просто дебаггер остановится, при этом ничего не говоря!!!! Просто, как-будто "Stop Debugger" нажали!!!!!

Тоже самое в Excel, Word, AutoCad!

ЧТО МОЖЕТ БЫТЬ УСТАНОВЛЕНО НЕПРАВИЛЬНО??? ГДЕ МОЖЕТ БЫТЬ БАГ????

Ответить

  Ответы Всего ответов: 8  

Номер ответа: 1
Автор ответа:
 Demon



ICQ: 7026585 

Вопросов: 18
Ответов: 96
 Web-сайт: update.sugardas.lt
 Профиль | | #1
Добавлено: 14.07.03 15:57

xxx = CreateObject("Word.Application")

Ответить

Номер ответа: 2
Автор ответа:
 .:: St!X ::.



ICQ: 339888425 

Вопросов: 13
Ответов: 51
 Web-сайт: www.ks-brand.ru
 Профиль | | #2
Добавлено: 14.07.03 16:00

Вопрос конечно интересный... Вообще я так вижу вызов функции CreateObject(,Word.Application)

Во-первых: Word.Application - ето имя класса, а ты его указываешь как имя сервера

Во-вторых: ето имя необходимо заключать в кавычки (этож не переменная)

В-третьих: попробуй вот так:

Dim x As Object
Set x = CreateObject("word.application")
Set x = Nothing

Только что пробовал - усе арбайтен. Удачи

Ответить

Номер ответа: 3
Автор ответа:
 Anatoly



Вопросов: 2
Ответов: 5
 Профиль | | #3 Добавлено: 14.07.03 16:11

Блин, я немного опЯчатался! Естественно в кавычках!

Пробовал по-разному! и

"xxx = CreateObject("Word.Application")" и "Dim x As Object
Set x = CreateObject("word.application")" тоже пробовал !

Дело все в том, что дебаггер не выдает никакой ошибки!!!!!!! Вообще никакой! Он просто останавливает работу программы без каких-либо сообщений! "On error go to 0 " тоже пробовал ! И "tools->general->break on all errors" тоже пробовал! При выполнении этой строки - программа останавливается даже если "on error resume next", без всяких сообщений и ошибок!

 

Проверить еще раз не могу - это было в коммандировке! Сейчас сижу и думаю, что это могло быть!!!! HELP!

Ответить

Номер ответа: 4
Автор ответа:
 .:: St!X ::.



ICQ: 339888425 

Вопросов: 13
Ответов: 51
 Web-сайт: www.ks-brand.ru
 Профиль | | #4
Добавлено: 14.07.03 16:42

указывается имя класса? точно?

Если все так Х-м-м-м.....  разве, что проверить библиотеку типов ворда msworb.olb перерегить ее. Вообще если вылетает дебаггер, значит трабла при создании экземпляра класса из либы. Скорее всего проблема как раз с либой ворда либо с какой-то связанной с ней либой. Можно попробовать отследить вызовы библиотек мониторингом файловой системы и реестра - и таким образом узнать при загрузке в память какого филе происходит глюк.

Ответить

Номер ответа: 5
Автор ответа:
 Anatoly



Вопросов: 2
Ответов: 5
 Профиль | | #5 Добавлено: 14.07.03 16:48

Да дело то гораздо проблемней! Если бы только Ворд.....

Я пробовал соединиться из AutoCad, Outlook, Excel, Word с каждым из объектов!

Т.е. из Екселя пробовал соединиться с остальными - ГОЛЯК, из AutoCad соединиться с остальными - тоже голяк!

Может ли это IExplorer6.6 или Office + SP3 подпоганить?

Как вообще проверить, где происходит глюк то??? Дело всё в том, что сейчас то я уже не могу проверить! Могу лишь связаться по мылу с теми людьми и что-нибудь им посоветовать! Я с "этим" сталкиваюсь 1-й раз! МЛЯ!

Ответить

Номер ответа: 6
Автор ответа:
 .:: St!X ::.



ICQ: 339888425 

Вопросов: 13
Ответов: 51
 Web-сайт: www.ks-brand.ru
 Профиль | | #6
Добавлено: 14.07.03 17:01

Да вообщем подгадить могет что угодно и искать хвосты можно бесконечно :-((((( Пробуй мониторингом файловой системы - вычислить на каком файле усе падает. А самый надежный способ винду грохнуть и заново все засетапить.

Ответить

Номер ответа: 7
Автор ответа:
 Anatoly



Вопросов: 2
Ответов: 5
 Профиль | | #7 Добавлено: 15.07.03 10:29

"Пробуй мониторингом файловой системы - вычислить на каком файле усе падает" - А это как вобще делается то? Разве возможно? Ведь у меня в процедуре 2-е строчки: msgbox и getobject! 1-я выполняется, а вторая нет! Как просмотреть этот мониторинг???

Ответить

Номер ответа: 8
Автор ответа:
 .:: St!X ::.



ICQ: 339888425 

Вопросов: 13
Ответов: 51
 Web-сайт: www.ks-brand.ru
 Профиль | | #8
Добавлено: 15.07.03 14:22

Имелось ввиду буквально следующее:

Ф-ция CreateObject все равно вызывается (иначе б не падало) из класса создается экземпляр объекта который в свою очередь может создавать (порождать) еще объекты, связанные с ним. Грубо говоря, все классы хранятся в файлах и при их инициализацци филе грузится в память. Так вот, есть предположение, что какой-то класс не в состоянии создать объект (в следствии чего все и рушится). Отслеживая вызовы к файловой сис-ме можно эксперементальным путем выяснить, кто такую щнягу вытворяет (какое филе). Юзай FileMon и RegMon.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам