Avatar billede mikaelskov Nybegynder
29. september 2003 - 15:15 Der er 5 kommentarer og
1 løsning

Programmet virker ikke når det kompileres til .exe fil

Jeg har lavet et program der snakker med comporten.

Jeg bruger componenten MSCOMM32. Spørgsmålet er som følger:

Når jeg kører mit program ved at bruge RUN funktionen inde under visual basic, kan jeg sagtens modtage informationer fra comporten, men når jeg laver en .exe fil, virker det ikke.

Min kode er som følger:


Private Sub Command1_Click()
    MSComm1.Output = TransmitData.Text
End Sub

Private Sub Form_Load()
    MSComm1.PortOpen = True
End Sub

Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
  Case comEvReceive
    RecievedData.Text = MSComm1.Input
  Case comEvSend
    ' do nothing here for now
  End Select

End Sub

Jeg kører windows XP, og jeg har en mistanke om at komponenten MSCOMM32 ikke bliver inkluderet når jeg laver min .exe fil...
Avatar billede jpvj Nybegynder
29. september 2003 - 15:18 #1
Prøv at lægge komponenten sammen med exe filen...
Avatar billede mikaelskov Nybegynder
29. september 2003 - 15:23 #2
til jpvj:

Kan du ikke udspecifikere det lidt, men jeg tror det er det jeg skal gøre, ved bare ikke hvordan.
Avatar billede jennemaan Nybegynder
29. september 2003 - 15:26 #3
du skal finde filen MSCOMM32.ocx (findes i dit system32 bibliotek) og lægge den sammen med exefilen.

/Jennemaan
Avatar billede mikaelskov Nybegynder
29. september 2003 - 15:31 #4
Ja ok, nu virker det. Den skulle åbenbart ligge i samme directory
Avatar billede joern Nybegynder
29. september 2003 - 18:55 #5
Hej.

Min erfaring med ocx'er er at windows søger 3 steder.  Først i systemmappen (system32 i NT m.fl.), dernæst i windows-mappen (winnt) og sidst i den mappe hvor exe-filen er startet fra.  Michaelskov fik åbentbart først sit program til at fungere med filen i app.path?  Hvor lå ocx'en før.

M.v.h. Jørn
Avatar billede jpvj Nybegynder
06. oktober 2003 - 13:04 #6
Er det ikke omvendt?

Det vil da umiddelbart give mere mening, hvis der først kigges i app dir'et, da man så kan lægge en specifik komponent version med til sit program.

Ved ikke om der kigges i systemfolderen, men SYSTEM/SYSTEM32 er ganske korrekt med.
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