Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
13.11.2008, 11:38
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
Всем привет! Столкнулся с таким. GetFileOpenName ( "Выберите", ls_pathname, ls_filename ) ls_fullname = ls_pathname // Выбор EXCEL файла myoleobject = CREATE OLEObject result = myoleobject.ConnectToObject( ls_fullname ) // result = 0 // Ok //.... //.... //.... myoleobject.DisconnectObject() DESTROY myoleobject Все прекрасно работает. НО в диспетчере задач остается висеть EXCEL.EXE При следующей операции result = -7 Или если открываешь EXCEL извне - системная ошибка. Как это побороть ? Может что не так делаю ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 11:40
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
сделайте в конце GarbageCollect ( ) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 11:44
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
Pashaсделайте в конце GarbageCollect ( ) Не помогло. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 11:48
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
soft1986 пишет: > Все прекрасно работает. > НО в диспетчере задач остается висеть EXCEL.EXE Файл открывал? Закрой его сам или дай возможность сделать это юзеру. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 11:53
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
перед myoleobject.DisconnectObject() напишите еще myoleobject.Quit() ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 11:55
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
а возможно еще и myoleobject.ActiveWorkbook.Close() ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 11:55
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
Dim2000 soft1986 пишет: > Все прекрасно работает. > НО в диспетчере задач остается висеть EXCEL.EXE Файл открывал? Закрой его сам или дай возможность сделать это юзеру. Файл не открывал. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 12:03
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 12:27
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
Riska Код: plaintext 1. 2. 3. 4. 5.
А зачем FileClose(li_ole_number), если не было FileOpen? И потом: все работает(ole_book.Application.Quit), но если уже открыт EXECL-документ, то он тут-же закрывается. А это не есть хорошо. Как быть ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 12:44
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
непонятно!! Вам надо чтоб и документ в Excel оставался открытым, и процесса в диспетчере задач небыло? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 12:47
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
VanoRнепонятно!! Вам надо чтоб и документ в Excel оставался открытым, и процесса в диспетчере задач небыло? Если вне приложения открыт EXCEL - то он тут-же закрывается. А если там у user-а что-то важное висит ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 13:04
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
Делай ConnecttoNewObject при этом открывается новый инстанс, соответственно и закрывать будешь только его, а без Quit выход не произведен, это все равно что просто открыть Exel, а потом удивляться почему же он открытый висит ----------------------------------------------------------------------------- Главная деталь любой машины - голова ее владельца ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 13:18
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
Тогда наверно сначала делать ConnecttoObject, если сделается, то в конце не делать Quit, а если не сделается то тогда уж ConnecttoNewObject, с Quit-ом в конце ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 13:23
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
VanoRТогда наверно сначала делать ConnecttoObject, если сделается, то в конце не делать Quit, а если не сделается то тогда уж ConnecttoNewObject, с Quit-ом в конце Извиняюсь за настойчивость. Это Понятно. А как после успешного ConnecttoNewObject - привязаться к нужному excel-документу. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 13:33
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
не понял ConnecttoNewObject и ConnecttoObject- это функции вашей переменной типа OLEObject... с этой переменной и надо потом работать myoleobject.Application.WorkBooks.Open("файл") а в конце myoleobject.DisconnectObject() если коннектились с ConnecttoNewObject, то тогда еще myoleobject.Quit() ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.11.2008, 14:46
|
|||
---|---|---|---|
Опять про OLE |
|||
#18+
Работайте с конкретным workbook-ом ole_object.workbooks(<имя книги>).worksheets(<имя листа>) ----------------------------------------------------------------------------- Главная деталь любой машины - голова ее владельца ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=15&mobile=1&tid=1336474]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
161ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
others: | 237ms |
total: | 507ms |
0 / 0 |