NotesSession and server

After we upgraded our server to V7 from 6.5, a nightly application that ran on our server stopped working and constantly crashed the server.

Basically the program opens up the admin id that sits locally on the server, and creates support memo with various info from the night.

What used to work in 6.5 does not work in 7

WriteLog(“Initializing Notes Session”)

  'initialize your EmailBody

  Try

     mSsn = New NotesSession

  Catch ex As Exception

     WriteLog("New Notes Session - " & ex.Message)

     Exit Sub

  End Try

then after

Try

        mSsn.Initialize("password")

     Catch ex As Exception

        WriteLog("Initialize('password') = " & ex.Message)

        Exit Sub

     End Try

Once this code is run, the domino server crashes hard with a nsd error and the server process needs to be started again.

Is this possible to run applications through com on the server? Is there another way to create forms through com and not have it run on a persons machine. (The code works perfectly if ran from my local machine)

Any help would be greatly appreciated.

Thanks

-Matt

Subject: NotesSession and server

Can it be so that after the update, Domino COM/OLE files are still referencing to the old Domino location and this causes crashes?

If possible, try to run same code on a fresh Domino7 server to verify if it works.

/Andrei

Subject: RE: NotesSession and server

Thanks for the reply.

We have tested it on another fresh install and it does work properly. Any idea on where this dll would\could be referenced?

Subject: RE: NotesSession and server

We (Matt and Gary) ended up fixing this using the following steps:

  1. Take the domojb.tlb in the notes folder and rename it .BAK and then copy in one from another install that works correctly (in this case I took the one from my machine as it is notes 7 and it worked on my machine).

  2. Unregister and register the tlb using this vb code. Note you will have to have a reference to the typelib information library (TLBINF32.DLL).

Private Sub btnRegister_Click()

Dim TLI As New TLIApplication

' raises an error if unable to register

' (e.g. file not found or not a TLB)

TLI.TypeLibInfoFromFile(InputBox("Enter path of tlb to register:")).Register

Exit Sub

errHandle:

MsgBox Err.Description

End Sub

Private Sub btnUnregister_Click()

Dim TLI As New TLIApplication

' raises an error if unable to unregister

On Error GoTo errHandle:

TLI.TypeLibInfoFromFile(InputBox("Enter path of tlb to unregister:")).UnRegister

Exit Sub

errHandle:

MsgBox Err.Description

End Sub

I used this code to unregister the new domobj.TLB file and then used it to register it as well. This fixed our problem up nicely.