AMajor Skrevet 1. august 2009 Del Skrevet 1. august 2009 (endret) Hei Jeg driver og koder et program for konsoll-modus. Programmet oppdaterer registeret (registry) med noen nøkler og verdier. Dette skjer i HKEY_LOCAL_MACHINE. Det funker veldig greit så langt med nøklene, men for at konsoll-vinduet skal oppdateres må brukeren logge av og på før endringene trer i kraft. Det virker ikke som at en trenger å reboote maskinen, men at det er nok å logge av og på for at de verdiene i registeret oppdateres ved resten av systemet. Men nå vil jeg ikke at brukeren skal reboote eller logge av og på. Ikke for dette lille programmet.. Etter noen søk(googlet) på nettet har noen foreslått å avslutte explorer.exe og kjøre den på nytt. Dette har jeg prøvd uten at det har fungert. Jeg gjorde det med både en batch-fil (ved bruk av taskkill) og med Task-Manageren i windows. Jeg har også prøvd å flushe nøklene med RegFlushKey, men jeg tror ikke det er der problemet ligger heller. Er det noen som vet hva som skjer når en bruker logger av og på, og hvordan dette påvirker konsollets registre og sånt? eller feks hva cmd.exe eller command gjør, hva de kaller og hva som skjer? jeg finner ikke ut hvor jeg skal lete. Noen erfarne eller noen som har prøvd noe liknende før? [edit] Jeg har også bladd over noe som heter "[MS-GPREG]: Group Policy: Registry Extension", det virker veldig tungt, og aner at løsningen ikke ligger der. Nå har jeg null peiling på "policies" så vet ikke om det er der jeg bør lete. [/edit] Endret 1. august 2009 av rydi Lenke til kommentar
Hans_Henrik Skrevet 1. august 2009 Del Skrevet 1. august 2009 shutdown -l muligens? Lenke til kommentar
AMajor Skrevet 2. august 2009 Forfatter Del Skrevet 2. august 2009 (endret) shutdown -lmuligens? Det er nettopp dette jeg ikke vil gjøre. Konsoll-vinduet eller det systemet som oppretter konsoll-vinduet skal restartes uten at brukeren trenger å restarte eller logge seg av og på. Og det hjelper heller ikke å starte et nytt konsoll-vindu fordi registrene i systemet ser ikke ut til å oppdatere konsoll-vinduet/vinduene. Endret 2. august 2009 av rydi Lenke til kommentar
backup Skrevet 3. august 2009 Del Skrevet 3. august 2009 Næ.. med taskkill går det nok ikke å få reaktivert registeret, men kanskje med dette vb script: Set oWmi = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" _ & "." & "\root\cimv2") Set colProcessList = oWmi.ExecQuery _ ("Select * from Win32_Process Where Name = 'explorer.exe'") For Each oProcess in colProcessList oProcess.Terminate() Next Etter at explorer er terminert, skal den starte opp igjen automatisk, men hvis den ikke gjør det, legg dette til scriptet ovenfor: Set WSHShell = CreateObject("Wscript.Shell") WSHShell.Run ("explorer.exe") Lenke til kommentar
AMajor Skrevet 3. august 2009 Forfatter Del Skrevet 3. august 2009 Næ.. med taskkill går det nok ikke å få reaktivert registeret, men kanskje med dette vb script: Set oWmi = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" _ & "." & "\root\cimv2") Set colProcessList = oWmi.ExecQuery _ ("Select * from Win32_Process Where Name = 'explorer.exe'") For Each oProcess in colProcessList oProcess.Terminate() Next Etter at explorer er terminert, skal den starte opp igjen automatisk, men hvis den ikke gjør det, legg dette til scriptet ovenfor: Set WSHShell = CreateObject("Wscript.Shell") WSHShell.Run ("explorer.exe") jeg foretrekker C++ kode, siden jeg bruker det primært. uansett, hva gjør det scriptet? bare avslutter og starter explorer.exe prosessen? Det kom kanskje litt uklart frem i innlegget at det var oppdateringen av registrene som ikke fungerte etter at explorer-prosessen ble restartet. Lenke til kommentar
AMajor Skrevet 7. august 2009 Forfatter Del Skrevet 7. august 2009 (endret) Jeg har peilet meg inn på csrss.exe etter mye om og men. Virker som at det er en kritisk prosess, fordi når jeg avslutter den får jeg bluescreen i Vista. Synd man ikke kan restarte denne, det ville vært kjempekjekt å finne ut om det er den som trengs for å oppdatere konsoll-vindu-registrene! Hvis noen har peiling på den interne virkemåten, please let me know. Endret 7. august 2009 av rydi Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå