Как убит сессию

Тема в разделе "Lotus - Программирование", создана пользователем Didokz, 14 июн 2010.

Статус темы:
Закрыта.
  1. Didokz

    Didokz Гость

    пишу на VB6,
    при закрытия формы выходит
    в модуле обьявил:
    Код (Delphi):
    Public ns As New NotesSession обявлен
    ........
    при инициализаций формы делаю
    Код (Delphi):
    ns.Initialize (passw)
    из за ns, т.е если закоментировать эту строку, ошибка не выходит, попробовал так

    Код (Delphi):
            ns.Initialize (passw)
    Set db = ns.GetDatabase(IPserver, DBName, False)
    Set ns = Nothing

    типа уничтожаю сессию, не помогает, значить его по другому надо убить :gifts: только не знаю как правильно, в инете шарился целый день
     
  2. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    Пальцем в небо: Delete ns

    А если убрать вообще код связанный с нотес, ошибка остается?
     
  3. Didokz

    Didokz Гость

    если убрать ns.Initialize (passw), то ошибка исчезает :rolleyes:
    Delete ns не проканало, пишет
     
  4. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    Попробовал в ворде макрос
    Код (LotusScript):
    Dim ns As Variant
    Dim db As Variant
    Set ns = CreateObject("Lotus.NotesSession")
    Call ns.Initialize
    Set db = ns.GetDatabase("", "names.nsf", False)
    If db.IsOpen() Then
    MsgBox db.Title
    End If
    - работает без каких-либо сообщений об ошибках.
     
  5. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    Akupaka
    вот с васиккодерами так всегда ;) - гнилой инструмент не позволяет понять что не работает (еще КОМа всё запутывет), а все гадают на кофейной гуще :(
    вордвасик<>хехельвасик<>ВБА<>бижуалвасик ;) это какие-то пересекающиеся местами множества, даже синтаксис отдельных мулек может не совпадать
     
  6. Didokz

    Didokz Гость

    одним слово мне надо убить созданную сессию, из за сессий выходит ошибка как я уже говорил, убираю ns.Initialize
    открываю форму, закрываю форму и приложения, проблем нет, лотусоиды, дайте мне УБИЙЦУ :(
     
  7. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Убийца лотуса — killnotes.exe :(
     
  8. Didokz

    Didokz Гость

    этого маняка я знаю, но это не подходит, а вдруг у юзера Lotus Notes открыто
    забыл сказать, у меня СОМ объект, используя СОМ объекты IBM-а пишу СОМ ;)
     
  9. divankin

    divankin Senjor developer

    Регистрация:
    13 авг 2009
    Сообщения:
    182
    Симпатии:
    0
    Попробуйте ловить ошибку в этой строке и, игнорируя ее, продолжать выполнение программы.
     
  10. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    ты мой пример попробовал?
    попробуй описать переменную сессии не где-то в модуле, а на уровне процедуры, сначала
     
  11. Didokz

    Didokz Гость

    пробовал, не помогло
    Код (Delphi):
    Private Sub Form_Load()
    Dim ns As New NotesSession
    Call ns.Initialize(passw)
    Set db = ns.GetDatabase(IPserver, DBName, False)
    Set ns = Nothing
    Exit Sub
    End Sub
    получаю базу и убиваю сессию,не помогает
    может инициализация привлечет собой ещё чего то ?
     
  12. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    А зачем ее там убивать?
    Set db = Nothing не пробовали перед Set ns = Nothing ?
     
  13. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    Да там, по-идее, само все должно убиваться...
     
  14. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    убивать сессию надо в самом конце работы с домино объектами...
    или я чего-то совсем не понимаю?%)
    Если ее вообще надо убивать при таком связывании (As New Notessession).
     
  15. Didokz

    Didokz Гость

    просто при откытии формы делаю
    Код (Delphi):
    Call ns.Initialize(passw)

    Set ns = Nothing
    закрываю форму и приложения,
    выходит ошибка
    закоментировал эти строки, открываю приложения и форму, закрываю, без ошибок, отсюда вывод, убить нада
     
  16. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    А если закомментить только Set ns = Nothing?
     
  17. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Интересно, в VB6 тип NotesSession что ли есть?
    Думал, надо создавать так: Set session = CreateObject("Lotus.NotesSession")
     
  18. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    ртфм Creating a session object
     
  19. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    На ртфм посылают, когда уверены, что работает! )))
    OKEN, ты уверена, что такой тип есть в ВеБеШесть? :)
     
  20. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    насколько я помню - VB6 - это Visual Basic. соответственно, там в ртфм для него были описаны шаги, как подключить DOMOBJ.TLB.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей