Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    136

    [C++]Cambiare l'entry point

    Come posso dire al compilatore ke l'entry point del programma deve essere una certa funzione pittosto della solita main??

  2. #2
    Utente bannato
    Registrato dal
    Sep 2001
    Messaggi
    413
    perchè si può fare?

    con i compilatori che ho visto io nessuno dava questa opzione...

    cmq una volta compilato.. che tu lo chiami main o lo chiami pippo.. quello è sempre uguale!

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    167

    Re: [C++]Cambiare l'entry point

    Originariamente inviato da mr.vajaski
    Come posso dire al compilatore ke l'entry point del programma deve essere una certa funzione pittosto della solita main??
    Non penso sia proprio possibile, devi entrare nel main e da lì puoi subito chiamare la funzione che vuoi. Se fosse possibile scoprirei veramente una cosa nuova.

    ciao.

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    136
    Certo ke è possibile, l'ho visto in surgente di un Os.

  5. #5
    n355un0
    Guest
    non dubito che in qualche maniera si possa fare, ma mi sembra più che altro un problema concettuale, come ha scritto infatti maldito qualche post fa.

  6. #6

    Re: [C++]Cambiare l'entry point

    Originariamente inviato da mr.vajaski
    Come posso dire al compilatore ke l'entry point del programma deve essere una certa funzione pittosto della solita main??
    La domanda nasce spontanea: Perché?

    Ciauz
    Che il pelo cresca sempre fluente sui vostri piedi
    Bilbo
    Visita il sito della Società Tolkieniana Italiana

  7. #7
    Utente bannato
    Registrato dal
    Apr 2002
    Messaggi
    546
    Certo che si fà:

    La cosa è concettuale.......

    l'entry point, come sapete, è il primo l'indirizzo della ram dove viene allocato il programma di partenza......
    se lanci uu prg la cpu assegna lo stack di partenza alla cella indirizzo che prevede la cpu, diciamo 1002, se ora chiudi il programma e lo rilanci esso partirà ad un diverso indirizzo e così via.

    Se vuoi far partire il programma, per esempio in aree riservate, per esempio un prg tsr che giri nella stessa zona di memoria di ZoneAllarm oppure altri programmi e condividere la stessa zona, devi, tramite codice, provvedere a disabilitare, come si fà per i video giochi, l'area non permessa ad accedere per esempio come la memoria video,... fatto questo dici al compilatore di indirizzare l'entry point in quella zona............... e il main ti porterà proprio lì

  8. #8
    VC++ ha un'opzione per modificarlo, ma ovviamente il tutto dipende dal compilatore che usi. Io spesso lo modifico perché il VC++, di default, chiama nell'entry-point (che non è direttamente main() ) delle funzioni che poi portano parecchie dipendenze inutili. Così arrivo a fare programmi anche di meno di 4kb! :adhone:

    Ciao.

  9. #9
    Ammettendo che si possa fare:
    perchè devi fare così?
    non puoi partire dalla main e richiamare la funzione che sarà il tuo e.p.??
    non vedo perchè complicarsi la vita.
    Sta di fatto che anche il Borland C++ Builder lo può fare, ma come è già stato detto, dipende tutto dal compilatore.
    Ma se vuoi rinunciare alla portabilità...

    r0x, sai che in win32 cè un'opzione che toglie tutte le dipendenze inutili??
    Io quando facevo i programmi in OpenGL, mi hanno detto di fare così:

    #define WIN32_LEAN_AND_MEAN

    Questo risparmia tutte le dipendenze inutili.
    INUTILE dire, che i programmi diventavano di 4kb... MUUUAHAHAH

    Oltre a questo puoi utilizzare i soliti parametri del compilatore... pragma e cose varie...

    EVVIVA LINUX!!!!
    Ciao
    #exclude <windows.h>
    Powered by Gentoo GNU/Linux
    Cos'e' l'impossibile se non una questione di tempo?
    Riesumare i post vecchi non e' sbagliato, e' una risposta o la continuazione di un thread. Meglio riesumare che creare di nuovi :]

  10. #10
    Sìsì lo uso sempre .. cmq la funzione incriminata che il VC++ chiama è qualcosa tipo _WinMainCRT (boh.. è da mesi che non lo uso..) e per alcune chiamate fa sì che la runtime C venga sempre linkata .. io per evitarla mi sono tipo riscritto alcune funzioncine standard C che uso spesso e mi evitavo la runtime statica che co sto ca**o di VC++ è enorme..

    P.S.: parlando di Unix-like .. io invece sto scoprendo piano piano BSD.. (piano piano piano piano ) ed è fiQo davvero!

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.