|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jun 2001
Messaggi: 782
|
[C++] Come cercare una classe all'interno del codice sorgente
Ciao, il mio problema è questo: devo riuscire a capire come funziona lo streaming rtp all'interno del famoso "VLC"; in ricezione utilizza una libreria chiamata "Live555" che ho facilmente individuato (e di cui quindi ho i sorgenti). Il mio problema è però capire dove viene utilizzata questa libreria all'interno di vlc, ovvero dove sono presenti le chiamate alle varie funzione di "Live555"; mi ritrovo cioè con un codice sorgente ad oggetti molto frammentato. Spero di essermi spiegato bene, in caso contrario chiedete pure, accetto quasiasi consiglio! Grazie in anticipo
![]()
__________________
HP DV6-6170sl - Play 4 - PSVITA - Oneplus One |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
|
Quote:
__________________
Khelidan |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Jun 2001
Messaggi: 782
|
Mi rispiego meglio, ho il codice sorgente sia del programma principale che di un plugin, questo plugin viene utilizzato dal programma principale da qualche parte, devo cercare nel codice sorgente del programma principale, trovarlo e capire come funziona...spero di essere stato più chiaro. Comunque uso Visual studio 2003. Grazie ancora!
__________________
HP DV6-6170sl - Play 4 - PSVITA - Oneplus One |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
Quote:
Cmq, se non hanno fatto dei giochi un po' troppo sporchi, io partirei dal plugin. E' molto probabile, infatti, che il plugin debba implementare dei metodi virtuale di una classe nota anche al programma principale. Per esempio: class MyPlugin : public PluginDefinition Comincerei a cercare dove la classe PluginDefinition e' utilizzata all'interno del codice del programma principale. Per l'implementazione dei plugin si puo' ricorrere anche a giochi piu' sofisticati di questo, e detti giochi ti renderebbero la vita piu' difficile. Io pero' partirei da qui. Inoltre, il nome della DLL/Shared che deve essere caricata, non e' noto a priori, ma verra' letto in qualche modo: scansione di un file di configurazione piuttosto che lettura del contenuto di qualche directory. Dopo di che si dovra' passare al caricamento dinamico del contenuto. Ecco, proverei anche a cercare nel codice le chiamate a quelle primitive di sistema che ti permettono di caricare. Non ne esistono tante, dovresti arrivare al punto desiderato piuttosto in fretta...
__________________
In God we trust; all others bring data |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 1792
|
Per "navigare nel codice", oltre agli strumenti di base di VS, puoi usare tool (freeware o trial) appositi: Source Navigator, Source Insight, Code Navigator, Understand for C++...
Ultima modifica di variabilepippo : 05-05-2008 alle 10:59. |
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Apr 2005
Città: Resana - TV
Messaggi: 960
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Jun 2001
Messaggi: 782
|
Mi sà che hp fatto casino nelle definizioni, dovrei parlare di libreria...non di plugin, scusate...
__________________
HP DV6-6170sl - Play 4 - PSVITA - Oneplus One |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:22.