Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    71

    {C++}Librerie interfacce grafiche Borland

    Creando dei programmi con interfaccia grafica con Borland C++ mi sono accorto ke per generare l'interfaccia grafica utilizza la libreria vcl.h. Infatti una volta compilato il mio programma e provato a lanciare su un'altro pc , su kui il borland non era installato, non risco ad aprire il programma a causa della mancanza di svariate librerie con estensione BPL. Queste librerie in totale superano i 5mb !!!????!!! Ora mi chiedo, ma se qualkuno vuole eseguire i miei programmi con interfaccia grafica deve x forza avere quelle librerie ?????? Se si il mio programma dai 50k diventerebbe 5mb di librerie + 50k ... una dimensione spropositata...come faccio a compilare il mio programma rientrando in delle dimensioni accettabili e senza dover necessitare di quelle librerie ????? Come sono programmati i milioni di programmini in c++ con interfaccia ke pesano un centinaio di k e non necessitano di nessuno libreria ???

    Grazie a chiunque risponda
    4l3

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    6
    Ci sono essenzialmente 3 modi di creare una qualsiasi applicazione :

    1) con supporto a librerie dinamiche esterne
    2) con linking statico delle librerie
    3) ad approccio misto (librerie statiche e dinamiche)

    nel punto 1) bisogna fornire con l'applicazione l'intero insieme di librerie dinamiche utilizzate (le dll appunto o anche i package bpl nel caso di borland)

    nel punto 2) tutto il codice utilizzato dalla nostra applicazione viene inserito direttamente nell'eseguibile, ovviamente l'exe tende a crescere, ma non necessita di librerie esterne

    nel punto 3) hai un ibrido dei 2 sistemi e tocca comunque fornire le dll o i files bpl utilizzati dall'applicazione

    Se la tua applicazione é di tipo console (senza interfaccia grafica) oppure crea l'interfaccia con le normali API del SDK di windows non hai bisogno dei package della vcl per cui all'atto della creazione del progetto puoi specificare di non includere la vcl.

    Se invece usi la vcl (framework piuttosto comodo, anche se io consiglio, per chi usa il C++Builder6, di utilizzare la clx che è + portabile della vcl) hai 2 opzioni : o includi tutti i files dll utilizzati dal tuo eseguibile
    oppure escludi l'utilizzo dei package a runtime e nelle opzioni del linker indichi di usare le librerie statiche.

    il C++Builder tende a creare eseguibili piuttosto corposi, soprattutto se la tua applicazione fa uso di molte finestre, tuttavia ti faccio notare che buona parte delle applicazioni windows create con linguaggi visuali tipo VB, Delphi e C++Builder generano eseguibili di svariati MB. Normalmente esclusivamente per esigenze di distribuzione e di protezione da reverse engineering gli exe vengono compressi utilizzando delle utility di compressione tipo PKLite32 e simili. (ci son compressori di exe anche freeware, cerca su sourceforge.net).
    L'iterazione é umana, la ricorsione é divina ...
    ... il tracollo dello stack é divinamente dietro l'angolo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.