Avatar billede pablopablo Nybegynder
13. november 2005 - 09:23 Der er 11 kommentarer

MSDE server og opstart af program

Hejsa...

Jeg har et program som benytter MS MSDE.

Mit program sørger selv for at starte serveren/windows servicen når brugeren klikker på exe-filen, samt at koble serveren til databasen, alt dette udføres selvfølgelig kun hvis serveren ikke er startet og databasen ikke allerede ét forbundet til serveren...og det virker alt sammen helt fint...:)

MEN...Der er flere kunder som har oplevet at programmet kommer med en fejl når de starter deres computer op, pga. exe filen er lagt ind under Start >> Programs >> StartUp i Windows...Dvs. fejlen skyldes, at programmet ikke kan tilgå databasen...og den eneste grund til, at den ikke skal kunne det er hvis serveren/servicen i windows endnu ikke er startet op...kan det ikke tænkes, at Windows eksekvere alle div. services først og derefter bla. de programmer som ligger i StartUp mappen, hvor mit program ligger og at mit program bliver eksekveret FØR at MSDE server instansen er 100% oppe at køre...?? Det virker i hvert fald meget sandsyneligt, idet at fejlen er MEGET periodisk på div. computere og det giver go' mening synes jeg...

Så spørgsmålet er jo så oplagt nu, kan dette problem løses UDEN at fjerne genvejen til programmet i Windows startUp mappe...?? ;)

Mvh. PabloPablo
Avatar billede arne_v Ekspert
13. november 2005 - 10:22 #1
services bliver startet når maskinen booter og startup programmer når
brugeren logger ind, så services starter først

kan du ikke ligge noget retry logik ind i din app ?
Avatar billede iblarsen Praktikant
13. november 2005 - 10:50 #2
Du kan sagtens starte servicen fra din app. Det du skal sikre dig er at du ikke gør noget før servicen er oppe og kører. Læg en rutine ind i din app som lytter til servicen. Og sørg for at din app ikke fortsætter for servicen er korrekt oppe og kører.
Avatar billede pablopablo Nybegynder
13. november 2005 - 11:16 #3
Hej igen...

Det var også det jeg havde tænkt på faktisk...altså at lave en løkke som fx venter 100ms indtil at serveren ér kørende...

tænkte blot om der var en mere korrekt måde at gøre det på, synes det er et generelt problem med nogle bestemte objekter...når noget starter, lukker, åber, lukker mv. for en forbindelse, en stream eller lign. så BURDE metoden ikke returnere FØR at den var 100% færdig...sådan synes jeg at det skulle være lavet inde bagved... :) Har nemlig stødt på denne problematik i flere forskellige sammenhængen...
Avatar billede pablopablo Nybegynder
13. november 2005 - 11:18 #4
Arne V >> Hvordan hænger dine statements forresten sammen, for mig er de lidt modsigende...hvis det førstnævnte altså er korrekt...?
Avatar billede arne_v Ekspert
13. november 2005 - 11:20 #5
jeg formoder at problemet er som du selv beskriver det:

service starter på at starte
app forsøger at bruge service
service færdig med at starte
Avatar billede pablopablo Nybegynder
13. november 2005 - 11:27 #6
ja det er korrekt! Jeg gik blot ud fra, da du sagde at services startes når maskinen booter, at de bestemt var kørende når man når kommer ind i Windows...Men det er de så åbenbart ikke...Det undre mig bare, for SÅ langt tid tager det jo ikke hvis man fx. via kontrolPanelet starter servicen manuelt...en 2-3 sek. vel...
Avatar billede arne_v Ekspert
13. november 2005 - 11:37 #7
se - det undrer faktisk også mig lidt !

men måske går det langsomt under opstart fordi der er meget som skal startes
samtidigt

du kan jo nemt teste det ved at prøve at vente 5 minutter med at logge ind
Avatar billede pablopablo Nybegynder
13. november 2005 - 11:41 #8
hehe...det er jeg sikker på at virker - jeg er ikke tvivl om hvad fejlen skyldes egentlig, men mere hvordan jeg løste den mest korrekt...:)

Når programmet ikke er start til automatisk opstart, så kommer fejlen aldrig, så det kan jo næsten kun være det...det undrede mig bare at den er så langsom, eller rettere at man kommer ind i Windows før at alle services er startet 100% op...
Avatar billede arne_v Ekspert
13. november 2005 - 11:44 #9
det kan godt tage tid inden services er klar

en lille løkke som forsøger SELECT @@VERSION og catcher exception indtil du får svar
Avatar billede pablopablo Nybegynder
13. november 2005 - 12:04 #10
yep - i try...læg et svar!
Avatar billede arne_v Ekspert
14. november 2005 - 14:52 #11
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester