Avatar billede graffstefan Nybegynder
09. maj 2002 - 08:48 Der 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!

Har brug for hjælpen....håber I er friske  - Tak!

Hilsen, Stefan
Avatar billede terry Ekspert
09. maj 2002 - 08:55 #1
you can MAYBE use the shell function
lok in help for this
Avatar billede terry Ekspert
09. maj 2002 - 09:01 #2
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")
Avatar billede joern Nybegynder
09. maj 2002 - 19:46 #3
Programmer som tillader en datafil som parameter skal have en 'space' mellem exe og datafil.

a= Shell(c:\programmer\psp\psp.exe d:\foto\billede.jpg

M.v.h. Jørn
Avatar billede fynbohans Nybegynder
11. maj 2002 - 01:55 #4
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.
Avatar billede itbjarne Nybegynder
08. juni 2002 - 22:55 #5
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.
Avatar billede graffstefan Nybegynder
20. januar 2003 - 12:34 #6
Tak!
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