Avatar billede gnukki Nybegynder
14. februar 2008 - 13:23 Der er 5 kommentarer

Kør kommandoprompt i baggrunden og udfør kommandoer

Hej,
Jeg er ved at lave et program, der skal styre nogle stepmotore. Selve styringen sker via et gammelt MS-DOS program via kommandoer. Jeg vil gerne lave et grafisk program, og jeg har desværre ikke kunne flytte den gamle kode over, så kommandoerne bliver nødt til at skulle skrives i kommandoprompt. Jeg har også forsøgt mig med DOS I/O redirection, men dette virker ikke da programmet skal være åbent nogle sekunder før der forbindes til motorene.

Det jeg gerne ville var om man kunne via VB kunne åbne en skjult kommandoprompt i baggrunden og så sende nogle kommandoer til denne?

Håber der er nogen der forstår min problematik og som kan hjælpe mig :)
Avatar billede sorenstrom Nybegynder
14. februar 2008 - 13:28 #1
Du må kune bruge Shell-kommandoen.

F.eks:
Dim retval
retval = Shell("c:\program.exe",1)

Dette eksekverer et hvilket som helst program.
1-tallet fortæller, at programmet skal have fokus.
Skal det køre skjult, skriver du bare 0 (nul) i stedet
Avatar billede gnukki Nybegynder
14. februar 2008 - 13:48 #2
Når jeg skriver den fulde sti og kører programmet skriver den at filen ikke findes, men når jeg kopierer stien ud i fx Kør, så virker det. Ved du hvorfor den gør sådan?
Avatar billede sorenstrom Nybegynder
17. februar 2008 - 11:20 #3
Hej igen. Har desværre været fraværende i et par dage.

Har du fundet en løsning?

Ellers må du prøve, at skrive din kode, så jeg kan se, hvad der sker.
Avatar billede gnukki Nybegynder
18. februar 2008 - 16:03 #4
Hej,

Jeg har nu den her kode:

Dim sCommand As String
        c:\kit113\dualstep.exe < c:\kit113\batch.txt
        sCommand = "c:\kit113\dualstep.exe < c:\kit113\batch.txt"
        Shell("command.com /C" & sCommand)

Jeg bruger command.com, da programmet skal afvikles fra win98.
Når ovenstående kode afvikles kan man se at der kommer et kommandopromt-ikon på proceslinjen. Men det underlige er at man skal trykke på ikonet før der sker noget
Avatar billede sorenstrom Nybegynder
18. februar 2008 - 16:31 #5
Nu kender jeg ikke meget til Windows 98, men jeg tror du mangler et 1-tal.
Jeg mener du skal skrive Shell("command.com /C & sCommand, 1)
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
Kurser inden for grundlæggende programmering

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