09. maj 2002 - 08:48Der er
5 kommentarer og 1 løsning
Kørsel af MS-dos program fra VB???
Hej Gutter,
Jeg har lavet et VB program, som genererer en .SRC-fil (tekstfil)! Denne fil skal så laves om til en binær fil ved brug af et specifikt MS-DOS program, som er tilegnet en industri-robot. På nuværende tidspunkt kan jeg kun åbne MS-DOS med komandoen Shell og manuelt skrive: c:VBprojekterOffline>rrlc "test.SRC", hvor test er navnet på den fil, som skal laves om.
Hvordan kan jeg, i mit VB-program, automatisk få .SRC-filen kørt i MS-dos programmet og derved få lavet en binær fil???
.SRC-filen er en almindelig tekstfil bare med et andet navn, så MS-DOS programmet kan åbne og konvertere .SRC-filen til binær format, som kan læses af en robot. MS-DOS programmet hedder RRLC.exe og følger med som robotsoftware!
Shell Function Example This example uses the Shell function to run an application specified by the user.
' Specifying 1 as the second argument opens the application in ' normal size and gives it the focus. Dim RetVal RetVal = Shell("C:\WINDOWS\CALC.EXE", 1) ' Run Calculator.
You could maybe use this for your problem RetVal = Shell("C:\ThePath\RRLC.EXE", "C:\test.src")
Måske er problemet at DOS-programmet slet ikke kan hente data fra en parameter på kommandolinjen, men at data skal hentes inde fra programmet? Windows Script kan sende de de nødvendige kommandoer til programmet. Og et program, som hedder DOSBOX(Freeware version findes) kan gøre det samme.
Jeg har før gjort noget lignende med først at bygge en .bat op med de parametre der skal bruges (open en fil og skriv i den med print #1, ... og derefter close den), og derefter udføre selve .bat filen med shell kommandoen. Problemet er at shell kommandoen udføres asynkront, dvs. at VB coden kører videre med det samme uden at vente på at .bat programmet er afsluttet. Dette har jeg modvirket ved først at lave en tom lock fil (filnavn.lck) som bliver slettet i den sidste linie i .bat programmet (DEL filnavn.lck). Så starter jeg .bat programmet med shell og venter derefter med at gøre noget før filnavn.lck er blevet slettet - dvs. det sidste der sker inden .bat prgrammet er færdigt.
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.