Gå til innhold

VB script til åpning og lukking av prog. Hvordan, misforstår jeg?


Anbefalte innlegg

Hei

 

Fant et VB script som ser ut til og kunne gjøre slik at det kan åpne et program samtidig som et annet og lukke det i samme slengen som det andre bli lukket.

 

Her:

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2:Win32_Process")

 

errResult = objWMIService.Create("C:\Program Files\XBMC\xbmc.exe", null, null, intMsimnID)

errResult = objWMIService.Create("C:\Program Files\XBMC\DontSleep\dontsleep.exe ", null, null, intSnoeID)

 

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

 

Set colProcesses = objWMIService.ExecNotificationQuery _

("Select * From __InstanceDeletionEvent " _

& "Within 1 Where TargetInstance ISA 'Win32_Process'")

 

Do Until i = 999

Set objProcess = colProcesses.NextEvent

If objProcess.TargetInstance.ProcessID = intMsimnID Then

Exit Do

End If

Loop

 

Set colProcesses = objWMIService.ExecQuery _

("Select * from Win32_Process Where ProcessID = " & intSnoeID)

 

For Each objProcess in colProcesses

objProcess.Terminate()

Next

 

Funnet på denne siden: http://www.windowsbbs.com/windows-xp/72287-script-make-program-run-another-program.html

 

Men forstår jeg det riktig at dette bare skjører i bakgrunn, slik at hvis jeg starter XBMC med vanlig snarvei, så vil også da DontSleep starte. Og da lukke seg samtidig som jeg lukker XBMC?

 

Eller misforstår jeg dette?

 

Håper jeg poster dette på riktig sted.

 

Petter

Endret av MB220CDI99
Lenke til kommentar
Videoannonse
Annonse

Det er jeg helt enig i at det hadde vært.

Men det er dessverre ikke slik at Windows alltid registrer at maskinen er i bruk hvis mus ikke blir bevegd på eller tastatur. Så dette er den eneste måten som fungerer.

 

Eks: Windows kan ikke blokkere at fjernkontrollen sender "standby" signal, det klarer Don`t Sleep.

 

Hår nå fått testet litt og scriptet fungerer, men som du sier, så er det XBMC som må startes for at det andre skal starte.

Lenke til kommentar

Hvilken fjernkontroll som sender standby-signal?

 

Hvis du sier i strømstyringen at PC'n _aldri_ skal hverken gå i sleep, slå av skjermen, eller slå av disker, så gjør den heller ikke det.

og hvis du da har en fjernkontroll som sier til pc'n at den skal slå seg av, så er vel den beste løsningen å si til fjernkontrollen at den skal slutte å gi det signalet?

 

-C-

Lenke til kommentar

Tror du misforstår litt.

 

Jeg har satt PC til og være våken mellom 24 og 12. Mellom 12 og 24 skal den være av.

Så sant den ikke er i bruk. Dette er liksom ikke problemet.

 

Problemet er at hvis jeg sitter og ser film da, mellom f.eks. 11 og 13, så er jo maskinen satt til og skru seg av. Og det er her da problemet kommer. Da skal jo sef ikke det skje.

Og ja, jeg vet jeg kan deaktivere dette, man da er poenget med det jeg prøver borte.

 

Og hvis jeg sitter og ser på film og den er ferdig kl. 01, så vil jeg heller ikke at PC skal skur seg av, selv om Harmony sender denne kommandoen. Så må ja PC takke nei til denne kommandoen, pga at den skal være på mellom 24 og 12.

 

Er det f.eks. mulig at hvis eks. XBMC kjører så blir kommandoen fra planlagte oppgaver satt til side.

Og blokkere standby signalet fra fjernkontrollen mellom 24 og 12.

 

Føler kanskje at denne ligger litt i feil kategori nå, men, ja.....

 

Håper fortsatt noen kan noe om dette, ikke enkelt og finne ut av i hvertfall..

Lenke til kommentar

Jo, det er bruk av sheduled task i Windows, fjernkontrollen er ikke så avansert dessverre.

 

Jeg bruker sheduled task til og gjøre så den skrur seg på kl 24 og av kl 12. Og da den er på mellom disse tidspunktene, kjører Don`t Sleep fordi det klarer og blokkere signalene fra fjernkontrollen, da jeg f.eks. er ferdig med og se en film. Slik at den ikke går i dvale. Kan dessverre ikke bestemme når og når den ikke skal skru av en ting, dessverre.

 

Så problemet mellom kl 24 og 12 er vel på en måte løst, selv om det ikke er en god løsning.

Men hoved problemet er jo som sagt over, at hvis jeg ser på film eller gjør andre ting så vul jeg jo ikke at den skal skru seg av kl 12. Hmm

Lenke til kommentar

AH! NÅ har jeg skjønt poenget ditt :D

 

Du vil at når du er ferdig og se film, og velger "se tv" eller lignende med fjernkontrollen, så sender den "AV"-signal til pc'n. Men dette vil du den skal drite i hvis du er innenfor "PC-PÅ" tidsrommet... Riktig?

 

For "ikke-slå-av-hvis-jeg-ser-film"-problemet kan du sette taskscheduler til å kjøre et skript som sjekker om prosessen "xbmc.exe" er åpen. Hvis den er det skal den ikke slå av pc'n. Hvis XBMC står på hele tida når pc'n er på, så får du gjøre det litt mer avansert og bruke json-rpc til å spørre xbmc om den spiller en film akkurat nå. (http://wiki.xbmc.org/index.php?title=JSON-RPC_API/v2#Player.GetActivePlayers)

 

Hvis den spiller film, sett skriptet til å kjøre på nytt om 10 minutter (http://support.microsoft.com/kb/313565)

 

Deretter endrer du profilen til fjernkontrollen slik at den aldri slår av pc'n ;)

 

EDIT: Mulig denne fungerer bedre enn "AT" til å schedule framtidige tasks: http://ss64.com/nt/soon.html

Endret av ChristianW
Lenke til kommentar

AH! NÅ har jeg skjønt poenget ditt :D

 

Du vil at når du er ferdig og se film, og velger "se tv" eller lignende med fjernkontrollen, så sender den "AV"-signal til pc'n. Men dette vil du den skal drite i hvis du er innenfor "PC-PÅ" tidsrommet... Riktig?

 

For "ikke-slå-av-hvis-jeg-ser-film"-problemet kan du sette taskscheduler til å kjøre et skript som sjekker om prosessen "xbmc.exe" er åpen. Hvis den er det skal den ikke slå av pc'n. Hvis XBMC står på hele tida når pc'n er på, så får du gjøre det litt mer avansert og bruke json-rpc til å spørre xbmc om den spiller en film akkurat nå. (http://wiki.xbmc.org/index.php?title=JSON-RPC_API/v2#Player.GetActivePlayers)

 

Hvis den spiller film, sett skriptet til å kjøre på nytt om 10 minutter (http://support.microsoft.com/kb/313565)

 

Deretter endrer du profilen til fjernkontrollen slik at den aldri slår av pc'n ;)

 

EDIT: Mulig denne fungerer bedre enn "AT" til å schedule framtidige tasks: http://ss64.com/nt/soon.html

 

Ja den øverste delen er riktig. Nice.

 

Men nedover vet jeg ikke helt om jeg skjønner. Hvordan script er det snakk om?

Hva gjør jeg hvis jeg ikke vil at den skal dø, hvis jeg jobber med den eller noe?

 

Skjønner ikke helt denne AT greia. Forstår det slik at det skal gjøre i Commander (CMD).

Eller misforstår jeg?

Endret av MB220CDI99
Lenke til kommentar

Hehe.

 

Istedet for å schedule en shutdown, så scheduler du kjøring av et skript som fungerer på følgende måte:

1. Sjekk om prosessen "xbmc.exe" går. Hvis nei, kjør "shutdown"-kommandoen i windows.
2. Send en json-rpc-kommando til XBMC for å sjekke om det er en film igang. Hvis nei, kjør "shutdown"-kommandoen i windows.
3. Hvis vi har kommet hit, står det en film og spiller. Benytt "soon"-kommandoen fra resource-kit (tror det er gratis fra microsoft) for å starte skriptet på nytt om 10 minutter.

Dette skriptet vil da etter 12:00 gå hvert 10 minutt, og slå av pc'n når xbmc lukkes, eller xbmc er på, men ingen film er i gang.

 

Problemet med at fjernkontrollen sender "slå-av"-signal er et litt annet problem, og løses enklest ved å be fjernkontrollen _ikke_ slå av pcn når du avslutter "Se film" actionen.

 

-C-

Lenke til kommentar

Skjønner slik delvis poenget, selv om jeg ikke skjønner noe av script delen.

Skjønner hva scriptet skal gjøre. Men ikke spes god på og lage script og skjønne kode greiene. Liker et utseende på ting, GUI? Med forklaringer på et språk man kan forstå. Og mener ikke Norsk, men Engelsk normal. Hehe

 

Og ja, helt enig (fjerne av signalet fra fjernkontrollen), men hvis jeg derimot vil bruke PC så går jo da scriptet og sjekker om eks. XBMC kjører, og gjør det ikke blir den jo igjen satt i stanby, og dette er jo heller ikke heldig.

 

Er litt vanskelig og forklare, da jeg ikke helt skjønner slikt med script og slik.

Lenke til kommentar

Det hadde absolutt vært det enkleste. Men der er det budsjettkutt for tiden.

 

Så det går dårlig. Pluss at jeg egentlig ikke har lyst til og ha enda en PC og forholde meg til.

 

Hvordan script var det snakk om, som kunne sjekke om xbmc kjører?

 

Jeg tror faktisk jeg kunne klart og løse dette på en måte, hvis jeg hadde fått dette programmet til og takle og kjøre flere samtidig.

 

http://www.softwareok.com/?seite=Microsoft/DontSleep

 

Har prøvd og legge det i forskjellig mapper, men hjleper ikke det heller.

Endret av MB220CDI99
Lenke til kommentar

Bruker maskinen som server for nedlasting og div backup for familie. Derfor jeg vil at den skal stå på om natten (24-12).

 

Tror nesten jeg har fått til det jeg vil også, hadde bare programmet Don`t Sleep, klart og kjøre flere a gangen. Dont sleep fungerer jo også greit, bortsett fra at det ikke klarer og sperre at skjermen går i svart. Men det klarer og blokkere sleep i hvertfall...

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...