Det kan du ikke. Problemet er at programmet skal understøtte det. Når du sætter en parameter efter en exe fil, skal programmet jo selv tyde parameteren og udføre kommandoen. Windows giver bare parameteren videre.
Jeg går ud fra at det er Windows Commander du vil have til at gøre et eller andet. Jeg har den ikke installeret og ved derfor ikke om den kan udføre noget der ligner det du vil have den til. Windows i sig selv, har ikke den funktionalitet du efterlyser.
Nej, det er ikke WindowsCommander jeg vil have til at gøre noget. Men derimod et program der hedder "Hypersnap". Jeg vil have programmet til at starte op og udføre kommandoen "ctrl+skift+r" som starter muligheden for at "snappe" et område af skrivebordet f.eks.
Det må da kunne lade sig gøre. Jeg spillede en del Quake3 i tidernes morgen og der kunne man f.eks indsætte "E:\games\Quake III Arena\quake3.exe" +exec rg.cfg
Jeg har kigget lidt på "features" i det program og der er selvfølgelig en hotkey funktion, men jeg har ikke kunnet finde noget om en "autoexec" funktion, hvor den automatisk tager et snapshot når den starter op. Så du må lede i programmet efter en sådan funktion og findes den ikke kan det ikke lade sig gøre. http://www.hyperionics.com/
Nej det er ikke det samme. Windows har intet med parametrene at gøre, den afleverer dem bare til programmet under opstarten. Hvordan programmet vælger at tolke parametrene er helt op til programmet. Quake kender så -exec og ved at den næste parameter så er konfigurationsfilen, men det er en feature i Quake.
Synes godt om
Slettet bruger
27. september 2003 - 14:37#6
vb script har en funktion: SendKeys, der kan sende tastetryk til et program.
Nedenstående .vbs eksempel, starter programmet Hypersnap.exe og sender Ctrl+Shift+r til programmet.
Set objShell = WScript.CreateObject("WScript.Shell") objShell.Run "Drev:\Sti_Til\Hypersnap.exe" Do Until Success = True Success = objShell.AppActivate("Hypersnap") Wscript.Sleep 100 Loop objShell.SendKeys "^+m"
Kopier teksten mellem de 2 stiblede linier, og sæt den ind i notepad (notesblok). Ret teksten "Drev:\Sti_Til\Hypersnap.exe" så den passer til dit program.
Gem filen som: hyper.vbs Husk at sætte notepad til All files når du gemmer, ellers sætter notepad endelsen .txt på. Endelsen SKAL være .vbs.
'------------------------------------------------------ Set objShell = WScript.CreateObject("WScript.Shell") objShell.Run "Drev:\Sti_Til\Hypersnap.exe" Do Until Success = True Success = objShell.AppActivate("Hypersnap") Wscript.Sleep 100 Loop objShell.SendKeys "^+r" '------------------------------------------------------
Min Firewall brokker sig iøvrigt også over den og siger at det er et "malicious script". Men det er vel meget normalt... Har givet scriptet lov til at køre :o)
Jeg hentede en evaluerings kopi af Hypersnap version 5. Udfra det du skriver er din version 4, så der et par steder du skal rette.
- "HprSnap5.exe" - Hvis du bruger en evaluerings kopi: "Welcome to Hypersnap-DX 5!" - Hvis du IKKE bruger en evaluerings kopi: Slet alt mellem de stiplede liner (også linierne).
Set objShell = WScript.CreateObject("WScript.Shell") objShell.Run "HprSnap5.exe"
'---------------------------------------------------------------- Do Until Success = True Success = objShell.AppActivate("Welcome to Hypersnap-DX 5!") Wscript.Sleep 100 Loop objShell.SendKeys "{RIGHT}{RIGHT}" Wscript.Sleep 10000 objShell.SendKeys "{RIGHT}{ENTER}" '----------------------------------------------------------------
Do Until Success = True Success = objShell.AppActivate("Hypersnap-DX") Wscript.Sleep 100 Loop objShell.SendKeys "^+r"
Den version jeg har er IKKE en evalueringskopi, men en registreret version. Det jeg har sat ind, ser derfor således ud:
Set objShell = WScript.CreateObject("WScript.Shell") objShell.Run "HprSnap.exe" Do Until Success = True Success = objShell.AppActivate("Hypersnap-DX") Wscript.Sleep 100 Loop objShell.SendKeys "^+r"
Jeg har også prøvet med HprSnap4.exe og også med hele stien som hedder: C:\Programmer\Hypersnap-dx 4\Hprsnap.exe
Den kommer stadig med den samme fejl.....ÆV ! Hvad fa.. gør jeg forkert ? Kan du ud fra de informationer jeg har givet dig lave et helt komplet script nu ?
Synes godt om
Slettet bruger
16. november 2003 - 12:55#20
Prøv med dette script.
strProgram = chr(34) & "C:\Programmer\Hypersnap-dx 4\Hprsnap.exe" & chr(34) Set objShell = WScript.CreateObject("WScript.Shell") objShell.Run strProgram Do Until Success = True Success = objShell.AppActivate("Hypersnap-DX") Wscript.Sleep 100 Loop objShell.SendKeys "^+r"
Nåå, ok. Men takker og bukker :o) Det var bare godt at det virkede. Var ellers lige ved at give op og æde pointene selv. Men der kan man bare se. Må sige at du er lidt hardcore. Hehehe :o)
Synes godt om
Ny brugerNybegynder
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.