Avatar billede bambi Nybegynder
28. november 2002 - 22:55 Der er 7 kommentarer og
1 løsning

Starte program fra logonscript i Windows 98/2000?

Det er måske i virkeligheden snarere et klientspørgsmål end et serverspørgsmål, men det henvender sig nok mest til folk der arbejder med servere:

I forbindelse med et logonscript på en Windows NT Server 4.0 der afvikles når Windows 98 og Windows 2000 klienter logger på serveren, skal jeg have startet et program i en separat proces – programmet skal altså køre i sit eget vindue uafhægigt af resten af logonscriptet og fortsætte efter logonscriptet er afviklet. Programmet skal startes fra en UNC-sti og have overført nogle parametre.

Mit bedste forsøg i øjeblikket er noget der ligner følgende i logonscriptet:

start "\\server\share\sti med mellemrum\program.exe" -parameter1 -parameter2

Det virker fint på Windows 98 klienterne, men under Windows 2000 får jeg blot en fejlmeddelelse om at den ikke kan finde hvad jeg end måtte have angivet som parametre til programmet – de bliver øjensynligt opfatten som programmer eller filer jeg prøver at referere.

Spørgsmålet er: Hvordan skriver jeg kommandoen så programmet kan startes fra et logonscript under både Windows 98 og 2000?
Avatar billede htm Nybegynder
28. november 2002 - 22:59 #1
Jeg kunne forestille mig at du skal stien som et netværksdrev før du kalder programmet, og bagefter kan du evt. slette drevet!
Nogle programmer har det sådan at de skal startes fra "roden" af et drev!
Avatar billede webcon Nybegynder
28. november 2002 - 23:27 #2
Når du kalder et andet program i et logonscript, med en UNC-sti, så vil programmet køre i samme proces. Dvs. at programmet køres færdigt og hvad der så måtte stå efterfølgende i dit script, vil så blive kørt.

Benytter du dig ikke af AD ?? Hvis du gør det, kan det godt lade sig gøre ved, at tilføje en kontrol til din OU. Derfra kan du angive installation af selvstændige programmer og for hvilken bruger skal have det.

/webcon
Avatar billede bambi Nybegynder
29. november 2002 - 09:32 #3
Så vidt jeg kan vurdere er det ikke et spørgsmål om UNC-stien, men et spørgsmål om at få styresystemet/kommandofortolkeren til at forstå hvad der er programnavn og hvad der er parametre. Jeg har prøvet at ”mappe” et drevbogstav og starte kommandoen derfra, ligesom jeg har prøvet at sætte hele kommandoen (drev, sti, programnavn og parametre) i anførselstegn, men ingen af delene giver den ønskede effekt.

Mht. problemet med at køre programmet som en separat proces bruger jeg netop kommandoen start for at undgå at resten af logonscriptet står og venter på at programmet bliver afsluttet – og det virker som sagt som jeg ønsker det i Windows 98, men ikke i Windows 2000.
Avatar billede hwa_26 Nybegynder
29. november 2002 - 10:55 #4
Jeg tror nærmere at det er "'erne der gør foskellen. I W2K skal de kun med hvis der er mellemrum i stien. Når man fra en bat-fil ell. lign kalder et program med kommandown "START" vil det blive startet op i sin egen proces.
Avatar billede bambi Nybegynder
29. november 2002 - 11:17 #5
Problemet er netop hvordan anførselstegnene opfattes af kommandofortolkeren eller kommandoen ”start” under Windows 2000: Hvis jeg IKKE sætter nogen anførselstegn kan programmet ikke startes fordi der er et mellemrum i programkatalogets navn. Og hvis jeg SÆTTER anførselstegnene (enten som i mit første eksempel eller rundt om hele kommandoen) bliver det blot brugt som overskrift til vinduet, og det der evt. ikke måtte stå i anførselsteg bliver forsøgt opfattet som en kommando.

Jeg kan simpelt hen ikke forstå hvad den korrekte syntaks for kommandoen under Windows 2000 er.
Avatar billede bambi Nybegynder
29. november 2002 - 11:54 #6
Det lader til at kommandoen "start" har ret forskellig syntaks under henholdsvis Windows 98 og Windows 2000. Under Windows 98 skal jeg skrive:

start "\\server\share\sti med mellemrum\program.exe" -parameter1 -parameter2

mens jeg under Windows 2000 skal skrive:

start /d"\\server\share\sti med mellemrum" program.exe -parameter1 -parameter2

Mit nye spørgsmål er nu: Hvordan laver jeg mit logonscript så jeg bruger den rigtige kommando afhængigt af hvilket styresystem man logger på med?
Avatar billede hwa_26 Nybegynder
29. november 2002 - 12:24 #7
Hvis det er fra en alm. bat-fil kan du checke på env.var. OS, der i Windows 2000 er lig "Windows_NT" og så forudsætte at hvis den er forskellig fra Windows_NT, må det være en W98...
Alternativt kan du bruge Kixtart (http://www.kixtart.org), som har nogle flere muligheder. Jeg kan hjælpe dig med det, hvis du er interesseret.
Avatar billede bambi Nybegynder
29. november 2002 - 14:14 #8
En løsning med at spørge på OS-variablen gør at det nu virker under både Windows 98 og 2000. Tak for hjælpen!
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