Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Δημιουργια TLB αρχεια

Îåêßíçóå áðü ôï ìÝëïò ntaryl. Τελευταία δημοσίευση από το μέλος George J. Capnias στις 04-12-2009, 00:16. Υπάρχουν 10 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  30-11-2009, 00:59 55545

    Δημιουργια TLB αρχεια

    καλημερα
    μπορει καποιος να με βοηθησει ωστε να μπορεσω να δημιουργησω Tlb αρχεια
    παρακαλω οτι πληροφοριες ευπροσδεκτες
    καλο βραδυ

    Rookie learn to fly U are my Inspiration...
    Who said Multithreading is impossible
    Try it First and after Deside if is Possible
  •  30-11-2009, 11:06 55548 σε απάντηση της 55545

    Απ: Δημιουργια TLB αρχεια

    Τί ακριβώς θέλεις να κάνεις? Θέλεις να δημιουργήσεις κάποιο tlb από κάποιο COM dll που έφτιαξες σε VB ή θέλεις να φτιάξεις tlb από το μηδέν για να το χρησιμοποιήσεις στη VB? Τα βήματα και τα εργαλεία είναι εντελώς διαφορετικά σε κάθε περίπτωση. Στη μία περίπτωση αλλάζεις κάποιο setting στο vb project. Στην άλλη γράφεις ένα midl αρχείο με σύνταξη C++ και το κάνεις compile με τη Visual C++/

    Καλά θα κάνεις πάντως να ψάξεις στο help πρώτα. Πολύ λίγοι θυμούνται πλέον πως γίνονταν αυτά τα πράγματα πριν 7 χρόνια και ακόμα λιγότεροι θα έχουν εγκατεστημένο το MSDN του 2001 για να βρουν την απάντηση που ζητάς.

    Και φυσικά, δεν θα ρωτήσω τί κάνεις και δουλεύεις ακόμα με COM και VB6 ...


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  01-12-2009, 20:12 55604 σε απάντηση της 55548

    Απ: Δημιουργια TLB αρχεια

    Καλησπερα   

    Φιλε  μου  οπως εχει καταλαβει δεν ασχολουμε  επαγελματικα με τον προγραμματισμο .χιχιχ

    Γι αυτο  ειμαι  οπαδος  της VB .

    Ενδοαφερομαι να φτιαξω ενα Tlb   απο το μηδεν ..

    Το  project  που  φτιαχβω ειναι ενα dll  το  οποιο οταν το κανω inject  κρασαρει  

    .Γι  αυτο τον λογο θελω να ενσωματωσω τα api   σε ενα αρχειο  TLB ετσι ωστε το  DLL  να  ειναι πιο  σταθερο  .

    καλο βραδυ   





    Rookie learn to fly U are my Inspiration...
    Who said Multithreading is impossible
    Try it First and after Deside if is Possible
  •  01-12-2009, 20:27 55605 σε απάντηση της 55604

    Απ: Δημιουργια TLB αρχεια

    Φτιάχνοντας ένα TLB δεν πρόκειται να γίνει πιο σταθερό το DLL σου. Κάτι έχεις κάνει στραβά και κτυπάει, δεν φταίει η VB6. Ίσα-ίσα που αν δοκιμάσεις να φτιάξεις TLB θα είναι πολύ πιο πιθανό να πάει κάτι στραβά. Τα TLB τα φτιάχνεις γράφοντας ένα Interface Definition αρχείο σε C++, το οποίο μετά κάνεις compile από τη C++. Όσα η VB6 σου φτιάχνει αυτόματα θα πρέπει εσύ να τα φτιάξεις με το χέρι. Αν έχεις πρόβλημα να χρησιμοποιήσεις ένα DLL φτιαγμένο από την VB6 θα έχεις πολύ μεγαλύτερο πρόβλημα αν πας σε C++.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  01-12-2009, 20:29 55606 σε απάντηση της 55604

    Απ: Δημιουργια TLB αρχεια

    ntaryl:

    Καλησπερα   

    Φιλε  μου  οπως εχει καταλαβει δεν ασχολουμε  επαγελματικα με τον προγραμματισμο .χιχιχ

    Γι αυτο  ειμαι  οπαδος  της VB .

    Ενδοαφερομαι να φτιαξω ενα Tlb   απο το μηδεν ..

    Το  project  που  φτιαχβω ειναι ενα dll  το  οποιο οταν το κανω inject  κρασαρει  

    .Γι  αυτο τον λογο θελω να ενσωματωσω τα api   σε ενα αρχειο  TLB ετσι ωστε το  DLL  να  ειναι πιο  σταθερο  .

    καλο βραδυ   

    Από ότι κατάλαβα έχεις φτιάξει ένα .dll σε VB6, χρησιμοποιώντας το ActiveX DLL project. Τα ActiveX DLL της VB6 περιέχει ενσωματωμένο το .TLB που χρειάζεται από το σύστημα για να μπορέσει να το αναγνωρίσει - δεν χρειάζεται να δημιουργήσεις ένα άλλο...

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  02-12-2009, 23:28 55637 σε απάντηση της 55606

    Απ: Δημιουργια TLB αρχεια

    Καλησπερα   

    Λοιπον  το  ολο σκεφτικο ξεκινησε στο να δοκιμασω να κανω  ενα μικρο hook  καποια  api  .κατι σαν  μικρo  usermode rootkit. Βρισκοντας ενα απλο παραδειγμα  και ξεκινωντας απο αυτο καταφερα να φτιαξω  κατι  σε τοπικο επιπεδο .(Hook MessageBox)

    Ενσωματωσα το hook  σε ενα Dll  και  το εκανα Compile  με το   VBadvance  .ενω  το ετρεχα και αναλυοντας το με  το  DebugView διαπιστωσα οτι  κατι δεν  παιζει  σωστα  .Εκτος απο τα συχνα κρασαρισματα του Windows explorer.

    Ξεχασα να πω οτι ολα τα api   Υπηρχανε μεσα  .Δεν χρησιμοποιουσα  TLB.

    Μετα απο  ψαξιμο ανακαλυψα οτι το να βαλεις τα api   σε ενα αρχειο  Tlb και να τα ενσωματωσεις .σου  δινει πιο σταθεροτητα απο πριν .

    Με την βοηθεια ενος  φιλου τελικα καταφερα να κανω Hook  την  FindnextfileW και να κρυψω κατι.

    Τελικα με το Tlb  αρχειο  βρηκα  ακρη στο power vb    

    Εχει ενα καλο TlB Editor  και ενα  φανταστικο Βιβλιο   

    καλο βραδυ  





    Rookie learn to fly U are my Inspiration...
    Who said Multithreading is impossible
    Try it First and after Deside if is Possible
  •  02-12-2009, 23:38 55638 σε απάντηση της 55637

    Απ: Δημιουργια TLB αρχεια

    Φοβάμαι ότι έχεις μπλέξει πάρα πολλά πράγματα, πάρα πολύ. Τα hooks δεν έχουν τίποτε να κάνουν με COM οπότε το TLB είναι εντελώς περιττό. Έτσι κι αλλιώς, δεν σου προσθέτει καμμία επιπλέον σταθερότητα. Από την άλλη, η VB6 είναι εντελώς ακατάλληλη γλώσσα για να φτιάξεις hooks καθώς σου κρύβει πολλά πράγματα στις κλήσεις των functions του Win32 API. Αυτό που για τις συνηθισμένες εφαρμογές είναι πλεονέκτημα, σε αυτή την περίπτωση γίνεται μεγάλο μειονέκτημα.

    Το Power VB το έχω κι εγώ. Το χρησιμοποίησα αρκετά πριν 6-7 χρόνια αλλά από τότε που βγήκε το .NET δεν το ξαναχρησιμοποίησα. Οι τεχνικές που περιγράφει είναι αρκετά περίπλοκες και επικίνδυνες αν δεν καταλαβαίνεις τί ακριβώς συμβαίνει, ενώ σε πολλά σημεία καταλήγει να χώσει και assembly κώδικα στο call stack διαφόρων functions.

    Αν δεν ασχολείσαι επαγγελματικά με τον προγραμματισμό, τί σου ήρθε να χρησιμοποιήσεις τις πιο στριφνές τεχνικές μίας γλώσσας νεκρής για να κάνεις κάτι για το οποίο ποτέ δεν φτιάχτηκε?


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  03-12-2009, 08:21 55647 σε απάντηση της 55638

    Απ: Δημιουργια TLB αρχεια

    Θα συμφωνήσω με τον Παναγιώτη ότι έχεις μπλέξει πολλά πράγματα, πάρα πολύ.

    Το VB Advance δεν βγάζει τα γνωστά ActiveX DLL που παράγει το περιβάλλον της VB6, οπότε το παράγωγο από μόνο του, είναι κάτι το "εξωτικό" σε ότι αφορά τον κόσμο της VB6. Από την άλλη μεριά ένα C like library, που ισχυρίζεσαι ότι έχεις φτιάξει και κάνει hook, συνήθως απαιτεί να είναι free-thread component. H VB6 δεν φτιάχνει τέτοια DLL - δεν το επιτρέπει το VB6 Runtime.

    Συνέπεια της δημιουργίας ενός component που δεν δουλεύει με το "συμβατό" τρόπο λειτουργίας της VB6, είναι να δημιουργεί προβλήματα κατά την λειτουργία του - που είναι και το σύνηθες αποτέλεσμα που παίρνεις σε αυτές τις περιπτώσεις.

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  03-12-2009, 19:08 55664 σε απάντηση της 55647

    Απ: Δημιουργια TLB αρχεια

    Καλησπερα   

    Ξερουμε  ολοι οτι με καποιο πειραγμα του Link.exe  μπορουμε να παραγουμε  standalone dll  και να τα  χρησιμοποιησουμε οπου θελουμε  .

    συμφωνω  οτι  θεωρειται παλια γλωσσα αλλα δεν παυει να κανει αρκετα πργματα.Το Vb Advance  -rellsoft compiller  δινουν την δυνατοτητα για σταθερα Dll  και αυτα  .

    Βεβαια  δεν εχει την σταθεροτητα ενος  προγραμματος σε C++ ,Asm  .

    Αλλα και ας μην εχει    φτιαχτει  και  μονο  η  προσπαθεοα ειναι  μαγεια  .χχιχιχ  


    καλο  βραδυ    

     


    Rookie learn to fly U are my Inspiration...
    Who said Multithreading is impossible
    Try it First and after Deside if is Possible
  •  03-12-2009, 21:31 55669 σε απάντηση της 55664

    Απ: Δημιουργια TLB αρχεια

    Βλέπω ότι έκανες edit και αφαίρεσες την ερώτηση αν μπορεί κάποιος να κάνει drivers με VB6. Τί να σου πω. Αν θέλεις σοβαρά να φτιάξεις hooks, να δουλέψεις με το shell ή να φτιάξεις drivers, μάθε C++. Αν θέλεις να δείξεις πως μπορείς να κάνεις κάτι με μία γλώσσα η οποία δεν φτιάχτηκε γι αυτό ....... τουλάχιστον μάθε πρώτα τί γίνεται και μην προσπαθείς να κάνεις στα τυφλά αυτά που διαβάζεις στο βιβλίο. Επαναλαμβάνω, το Power VB6 το χρησιμοποιήσαμε κι εμείς πριν από 6-7 χρόνια, σε εμπορικές εφαρμογές, για να κάνουμε πράγματα που η VB6 δεν έκανε αλλά μας έκαιγε να τα κάνουμε. Πράγματα όπως το να προσθέσεις exception handling.

    Και τα σκασίματα μας φάγαμε και το ζόρι το τραβήξαμε. Ευτυχώς, τα έργα τελειώσανε,  έχουν περάσει 6 χρόνια από τότε και δεν ξαναχρειάστηκε να ασχοληθούμε με τέτοιο χάλι.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  04-12-2009, 00:16 55674 σε απάντηση της 55664

    Απ: Δημιουργια TLB αρχεια

    ntaryl:

    Καλησπερα   

    Ξερουμε  ολοι οτι με καποιο πειραγμα του Link.exe  μπορουμε να παραγουμε  standalone dll  και να τα  χρησιμοποιησουμε οπου θελουμε  .

    συμφωνω  οτι  θεωρειται παλια γλωσσα αλλα δεν παυει να κανει αρκετα πργματα.Το Vb Advance  -rellsoft compiller  δινουν την δυνατοτητα για σταθερα Dll  και αυτα  .

    Βεβαια  δεν εχει την σταθεροτητα ενος  προγραμματος σε C++ ,Asm  .

    Αλλα και ας μην εχει    φτιαχτει  και  μονο  η  προσπαθεοα ειναι  μαγεια  .χχιχιχ  


    Θα συμφωνήσω και πάλι με τον Παναγιώτη.

    Το VB-ADvance δεν είναι διαφορετικός compiler - απλά περνάει κάποια extra options στον υπάρχοντα compiler/linker για να μπορείς να φτιάξεις c-like dlls και console applications. Μέχρι εκεί, όμως. Ότι φτιάχνεις δεν έχουν ποιοτική διαφορά από τα κανονικά dlls και exes που φτιάχνει η VB - όλοι οι περιορισμοί ισχύουν και πάλι.

    Καταλαβαίνω το challenge που νιώθεις κάνοντας τέτοια πράγματα - από την άλλη μεριά δεν καταλαβαίνω γιατί καταδικάζεις τον ευατό σου να μην μπορεί να επιτύχει το ποθητό αποτέλεσμα μένοντας καρφωμένος στην VB6 που έχει εγκαταληφθεί, από την στιγμή που μπορείς να μεταπηδήσεις πολύ εύκολα στην VB.NET, και να χρησιμοποιήσεις όλη την εμπειρία σου κατευθείαν, και παράλληλα, να έχεις ένα cutting-edge εργαλείο.

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems