[VB] Windows service start niet of niet goed

Pagina: 1
Acties:
  • 295 views sinds 30-01-2008
  • Reageer

  • Blue-eagle
  • Registratie: September 2000
  • Niet online
Ik heb een applicatie gemaakt in Visual Basic die via CMD (DOS) geinstalled wordt (naam.exe -install) als Windows service. Hij komt ook mooi in het lijstje te staan met als opstarttype 'automatisch'. Het probleem is alleen dat in dit programma ik een timer heb zitten die iedere 30 seconden iets doet. Als ik nu handmatig de service start, dan krijg ik de volgende error:

"De [naam]-service op Lokale computer is gestart en is daarna gestopt. Sommige services stoppen automatisch als ze niets te doen hebben, bijvoorbeeld de Performance Logs and Alerts-service."
offtopic:
Ja die 'and' is dus niet helemaal vertaald ;)


Ik heb mijn programma vergeleken met dat van een collega, maar er lijkt niets raars te zitten in zijn of mijn programma. Dus mijn vraag nu, hoe komt het dat mijn programma niet gewoon blijft draaien en ook doet wat 'ie moet doen als ik hem als stand-alone EXE draai?

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
:?
Je hebt dus een form met daarop een timer? Is die timer wel enabled? Wordt het timer event gefired? Wordt het form uberhaupt geladen of start je in een sub main?
Ik neem aan dat je NTSVCOCX gebruikt? Wat doet 'ie als je 'm niet als service draait, maar gewoon start?

Schrijf eens wat dingen weg in een logfile/eventlog om te zien wat er nu gebeurt en wanneer 'ie terminate (dus op "strategische" plekken wat dingetjes loggen)?

Je zult toch echt een beetje moeten debuggen wil je er achter komen wat het probleem is. Het lijkt er in ieder geval op dat je programma "gewoon" sluit als 'ie "klaar" is.

[ Voor 29% gewijzigd door RobIII op 05-07-2005 17:01 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Blue-eagle
  • Registratie: September 2000
  • Niet online
Ja het is eigenlijk gewoon een form met een timer, die z'n default form gewoon "hide" bij het laden. De timer gebruikt een functie welke database handelingen verricht en e-mails stuurt. Ik gebruik inderdaad ntsvc.ocx.

In de logfile staat eigenlijk alleen dit:
The initialization process failed.
en
Kan beschrijving voor gebeurtenis-ID (1) in bron ([naam]) niet vinden. De lokale computer beschikt wellicht niet over de benodigde registergegevens of DLL-berichtbestanden om berichten van een externe computer te kunnen weergeven. U kunt mogelijk de schakeloptie /AUXSOURCE= gebruiken om deze beschrijving op te halen, zie Help en ondersteuning voor details. De volgende gegevens zijn deel van de gebeurtenis: [0]
Wat mij, eerlijk gezegd, niet veel zegt, ook Google blijkt niet lekker duidelijk.

Hmm.. ik post toch, maar ik ga even wat proberen...

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Die melding krijg je omdat je de gebeurtenis niet geregistreerd hebt bij windows en windows dus niet kan herleiden wat het betekent.
Maar als je nou gewoon eens zelf wat logged?

Visual Basic 6:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Option Explicit

Private Sub Form_Load()
    '...
    '...
    Log2File "Dit en dat gedaan, OK"
    '...
    '...
    Log2File "Zus en zo gedaan, OK"
    '...
    '...
    Log2File "Form_Load compleet"
End Sub


Private Sub Timer1_Timer()
    Log2File "Timer 1 gefired"
    '...
    '...
    Log2File "Dit en dat gedaan, OK"
    '...
    '...
    Log2File "Zus en zo gedaan, OK"
    '...
    '...
    Log2File "Timer1_Timer compleet"
End Sub


Private Sub Log2File(sDesc As String)
    Dim FF As Integer
    
    On Error GoTo errLog2File
    FF = FreeFile
    Open App.Path & "\somelog.log" For Append As #FF
    Print #FF, Format(Now, "yyyy-mm-dd hh:nn:ss") & vbTab & sDesc

errLog2File:
    Close #FF
End Sub


En anders kijk hier effe ofzo?

[ Voor 15% gewijzigd door RobIII op 05-07-2005 17:21 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij