Gå til innhold

Borland og exe.filer: Hvordan kjøre dem på andre maskiner?


Anbefalte innlegg

Begynner å få litt dreisen på C++ her. Bruker Borland 6.0. Når jeg kompilerer og lenker ei cpp-fil, så får jeg ikke kjørt exe-fila på andre maskiner enn min egen. Får beskjed om at det mangler ei dll-fil ved navnet CC3260MT.dll

Så hvordan løser jeg dette bortsett fra å legge inn dll-fila på de andre maskinene?

 

Også er det en ting til jeg lurer fryktlig på. Har funnet ut at den eneste måten jeg får skrevet et dos-program på er å velge Console-wizard fra file->new->other. Er dette riktig måte å gjøre det på? Er dette grunnen til at jeg får dll-feilen? Når jeg velger Console-wizard ser det nye "blanke" dokumentet slik ut:

 

 

 

//---------------------------------------------------

 

#include <vcl.h>

#pragma hdrstop

 

//---------------------------------------------------

 

#pragma argsused

int main(int argc, char* argv[])

{

return 0;

}

//---------------------------------------------------

 

 

 

 

Har funnet ut at jeg deretter må slette mesteparten slik at kun #include <vcl.h> står igjen. Hva betyr alt det jeg fjerner, og hva slags pakke er <vcl.h> og hvorfor vil ikke fila la seg kompilere dersom jeg utelater den også?

 

Mottar svar med mange, mange, mange takk...

 

 

 

 

 

 

 

[ Denne Melding var redigert av: hoppesagåsa på 2002-05-25 18:30 ]

Lenke til kommentar
Videoannonse
Annonse

Det går nok ikke an å lage DOS-programmer i C++Builder, men du tenker nok på konsoll-programmer. Det likner på dos-programmer men de bruker Win32 API, og du kan ikke kjøre programmene på en maskin med gode gamle MSDOS. Skal du lage ekte DOS-programmer må du bruke en eldre kompilator, f.eks Borland C++ 5.0 - merk IKKE C++Builder 5.0!

 

For å lage konsollprogram velger du File->New->Console Wizard hvis jeg husker riktig. Da kan du selv velge om du vil ha med VCL. Hvis du ikke krysser av for VCL skal du heller ikke få med #include <vcl.h>. VCL står for Visual Component Library, og brukes først og fremst til GUI-komponenter (knapper, checkboxer osv.) selv om det er annet nyttig der også. Til et enkelt konsoll-program trenger du antakeligvis ikke VCL.

 

Når det gjelder disse #pragma-greiene er dette Borland-spesifikke direktiver. Altså ikke standard C/C++ men kode som C++Builder bruker til ting og tang. Du kan sikkert fjerne mesteparten av det (hvis du vil) når du ikke bruker RAD.

Lenke til kommentar

Får jeg også kommentere at det IKKE går ann å kopiere exe filen over til en annen datamaskin. Det er akkurat som å sende exe filen på mail til en annen. Du får kjørt programmet, men programmet vil ikke fungere 100% korrekt. Hver datamaskin må nok kompilere sitt eget program.

 

Det finnes helt sikkert programmer der ute som kan gjøre det slik at du ikke trenger å kompilere på nytt, men dette vet ikke jeg noe om...

Lenke til kommentar

Quote:


Den 2002-05-25 22:27, Hoppesagåsa skrev:

Takk for svar! Men hva er RAD ?


RAD = Rapid Application Development

 

Kan egentlig bety mye rart, men i C++Builder's tilfelle spiller det særlig på muligheten til å raskt lage grafiske brukergrensesnitt, koble GUI-elementer til databaser osv.

Lenke til kommentar

Quote:


Den 2002-05-26 13:42, CaSh skrev:

Får jeg også kommentere at det IKKE går ann å kopiere exe filen over til en annen datamaskin. Det er akkurat som å sende exe filen på mail til en annen. Du får kjørt programmet, men programmet vil ikke fungere 100% korrekt. Hver datamaskin må nok kompilere sitt eget program.


Det skal gå fint å sende C++Builder programmer til andre så lenge de kjører Win95 eller nyere. Eneste man må passe på er at det kan kreves noen .dll filer, men dette avhenger av typen program du lager. For et enkelt konsoll-program vil nok en .exe fil holde, men hvis man bruker forskjellige komponenter som følger med vil man måtte legge ved noen .dll filer. Det står masse om dette i hjelpefilene, slå opp på 'deployment'. Man kan også bruke InstallShield Express til å lage et fiks ferdig installasjonsprogram med alle de nødvendige filene.

Lenke til kommentar

Quote:


Den 2002-05-26 13:42, CaSh skrev:

Får jeg også kommentere at det IKKE går ann å kopiere exe filen over til en annen datamaskin. Det er akkurat som å sende exe filen på mail til en annen. Du får kjørt programmet, men programmet vil ikke fungere 100% korrekt. Hver datamaskin må nok kompilere sitt eget program.


Det finnes helt sikkert programmer der ute som kan gjøre det slik at du ikke trenger å kompilere på nytt, men dette vet ikke jeg noe om...


 

Hadde det bare vært så vel :smile: Får ikke akkurat tak kildekoden til Windows, Office eller andre kommersielle programmer og muligheten til å kompilere den selv. Og samtlige av disse er laget i C/C++.

 

Hvis programmet er kompilert med støtte for f.eks. AMDs 3dnow instruksjoner, vil det ikke fungere på en Intel prosessor. (og omvendt). Men de fleste kompilatorer lager Intel-386-kode som virker overalt. (Med mindre du ber om noe annet.)

 

Men det er absolutt en fordel å kompilere selv, slik at man får optimisert programmet for sin prosessor. Slik det tradisjonelt gjøres i GNU/Linux. Alle kommersielle windows-programmer leveres derimot ferdig kompilert for 386... :smile:

 

LeD

Lenke til kommentar
  • 4 uker senere...
  • 2 måneder senere...

Quote:


Den 2002-05-26 13:42, CaSh skrev:

Får jeg også kommentere at det IKKE går ann å kopiere exe filen over til en annen datamaskin. Det er akkurat som å sende exe filen på mail til en annen. Du får kjørt programmet, men programmet vil ikke fungere 100% korrekt. Hver datamaskin må nok kompilere sitt eget program.


Det finnes helt sikkert programmer der ute som kan gjøre det slik at du ikke trenger å kompilere på nytt, men dette vet ikke jeg noe om...


 

Hvis du har windows så bruk hurtigvisning til å få referanser på hvilke filer programmet ditt er avhengig av.

Så copier de nødvendige dll-filer og bpl-filer

som hører til programmet.

Har brukt C++Builder4 til programmering.

Siden C++Builder4 og muligens senerer versjoner bruker VCL biblioteket så må du ha med de nødvendige

bibliotek filene.

Alternativt kan du bruke ren windows API til å programmere for windows.

Lenke til kommentar

Quote:


Den 2002-05-25 16:41, Hoppesagåsa skrev:


Begynner å få litt dreisen på C++ her. Bruker Borland 6.0. Når jeg kompilerer og lenker ei cpp-fil, så får jeg ikke kjørt exe-fila på andre maskiner enn min egen. Får beskjed om at det mangler ei dll-fil ved navnet CC3260MT.dll

Så hvordan løser jeg dette bortsett fra å legge inn dll-fila på de andre maskinene?


Også er det en ting til jeg lurer fryktlig på. Har funnet ut at den eneste måten jeg får skrevet et dos-program på er å velge Console-wizard fra file->new->other. Er dette riktig måte å gjøre det på? Er dette grunnen til at jeg får dll-feilen? Når jeg velger Console-wizard ser det nye "blanke" dokumentet slik ut:




//---------------------------------------------------


#include <vcl.h>

#pragma hdrstop


//---------------------------------------------------


#pragma argsused

int main(int argc, char* argv[])

{

return 0;

}

//---------------------------------------------------





Har funnet ut at jeg deretter må slette mesteparten slik at kun #include <vcl.h> står igjen. Hva betyr alt det jeg fjerner, og hva slags pakke er <vcl.h> og hvorfor vil ikke fila la seg kompilere dersom jeg utelater den også?


Mottar svar med mange, mange, mange takk...








<font class=editedby>[ Denne Melding var redigert av: hoppesagåsa på 2002-05-25 18:30 ]</font>


 

/*

Hei programmet burde virke men du ser det ikke fordi

den vet ikke hvordan den skal gi tilbake melding.

men hvis du setter:

*/

 

#include <stdio.h>

#include <conio.h>

/*

og skriver feks.

*/

 

/*

#pragma hdrstop

#pragma argsused

*/

 

int main(int argc, char* argv[])

{

printf("hallo");

getch();

 

 

return 0;

}

 

/*

håper det hjelper...

men ren dos programmering kan du gjøre med Turbo C

som du kan kan laste ned gratis fra http://www.borland.com

søk "borland community" AND "Turbo C" med yahoo

*/

Lenke til kommentar
  • 2 måneder senere...

Fra da jeg tuska rundt i BC++ synes jeg å huske at problemet med at ikke jeg fikk kjørt applikasjoner på andre maskiner en den jeg hadde BC++ installert på ble løst ved å fjærne en enkel hake under Project -> Options, pr default bygger nemlig BC++ aplikasjoner som trenger litt ting og tang fra borland (hvorfor vites ei av meg, da jeg hverken er proff eller kjempeflink i c++), men selfølgelig skal man kunne lage apps som funker på en hver pc med Doze som OS.

 

altså: Menyen "Project" -> Options , og les littegrann.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...