Mivas (myphone) Δημοσ. 10 Αυγούστου 2018 Δημοσ. 10 Αυγούστου 2018 καλησπέρα. Θέλω να αντιγράψω στοιχεία από μια έκδοση dll σε μία άλλη, ώστε να κάνω πλήρως λειτουργικό/συμβατό έναν driver με το laptop μου. Έχετε προτάσεις για κάποιο εύκολο και καλό πρόγραμμα επεξεργασίας; Δοκίμασα το Resource Hacker, αλλά δεν βοηθάει πολύ... Κάποιο άλλο ίσως;
vAg0s97 Δημοσ. 10 Αυγούστου 2018 Δημοσ. 10 Αυγούστου 2018 Για να ανοίξεις και να δεις τον κώδικα που περιέχει ένα αρχείο dll, μπορείς να ψάξεις στο Google με τον όρο "how to crack a dll file" Για να επαναδημιουργήσεις χρειάζεσαι απλά έναν editor όπως το Notepad++ σε απλό περιβάλλον ή χρησιμοποιόντας το Visual Studio.
vel0city Δημοσ. 11 Αυγούστου 2018 Δημοσ. 11 Αυγούστου 2018 Όταν λες "στοιχεία" εννοείς κώδικα/exported functions? Γιατί δεν μπορείς απλά να κάνεις αντικατάσταση το σωστό .dll στο laptop σου έτσι ώστε να φορτωθεί αυτό? Δώσε περισσότερες πληροφορίες για να σε βοηθήσουμε.
Mivas (myphone) Δημοσ. 11 Αυγούστου 2018 Μέλος Δημοσ. 11 Αυγούστου 2018 (επεξεργασμένο) Ευχαριστώ για τις προτάσεις παιδιά. Η ιδέα είναι να φτιάξω υβριδικό driver για την ενσωματωμένη GPU της Intel που να λειτουργεί άψογα με Windows 7. Πείραξα το αρχείο inf δύο διαφορετικών εκδόσεων και παίρνω μερική συμβατότητα. Αυτό που δεν λειτουργεί σωστά είναι ένα αρχείο dll. Χρησιμοποιώ το αρχείο της παλιάς έκδοσης που είναι συμβατό με τα 7, αλλά ο παλιός driver δεν ήταν για επεξεργαστές 8ης γενιάς. Επομένως θέλω να μεταφέρω στοιχεία από το dll της νεότερης έκδοσης στην παλιά. Το παλεύω με PE editor που είναι απο τους πλερέστερους από ό,τι διάβασα, αλλά και πάλι χωρίς γνώσεις δεν βγάζω άκρη. Στην πράξη μπορώ να διαβάσω μόνο την κεφαλίδα και τις πληροφορίες, όχι το υπόλοιπο περιεχόμενο των 90MB του dll... Έχω φτιάξει και θέμα εδώ για να δείτε και τα βήματα που ακολούθησα έπειτα από δεκάδες trial & error... Επεξ/σία 11 Αυγούστου 2018 από Mivas (myphone)
Mivas (myphone) Δημοσ. 11 Αυγούστου 2018 Μέλος Δημοσ. 11 Αυγούστου 2018 2 ώρες πριν, solarpower είπε Παράτησέ το! Τσάμπα τρως τον χρόνο σου. Ευχαριστώ για την συμβουλή!
Mivas (myphone) Δημοσ. 12 Αυγούστου 2018 Μέλος Δημοσ. 12 Αυγούστου 2018 10 ώρες πριν, solarpower είπε Άλλαξε laptop. Δες για refurbished. Μόλις το πήρα κι είναι συμβατό με 10άρια. Στα 7άρια δουλεύουν όλα εκτός από τον συγκεκριμένο driver, και από όλη την αναζήτηση που έχω κάνει, κανένας δεν παίρνει έστω και αυτή τη μερική συμβατότητα που πήρα εγώ με σχεδόν μηδενικές γνώσεις... Για αυτό ρώτησα αν κάποιος έχει εμπειρία με dll... Λειτουργούν μια χαρά τα 7άρια αλλά δεν παίρνω το 100% του λάπτοπ... Και κάποιες εφαρμογές που έχουν 3D γραφικά δεν λειτουργούν...
marios28 Δημοσ. 12 Αυγούστου 2018 Δημοσ. 12 Αυγούστου 2018 Μήπως θα σου ήταν πιο εύκολο (αν γίνεται δηλαδή) να επικεντρωθείς στη συμβατότητα (για κάποια εφαρμογή ίσως) που αφορά τα W10;
vel0city Δημοσ. 12 Αυγούστου 2018 Δημοσ. 12 Αυγούστου 2018 (επεξεργασμένο) Τι σε κάνει να πιστεύεις ότι ο driver που θες να αλλάξεις δε χρησιμοποιεί πράγματα που υπάρχουν μόνο στα Windows 10? Πως θα ξέρεις ακριβώς τι κώδικα να αντικαταστήσεις χωρίς να έχεις κάνει καθόλου debugging στο γιατί σου κρασάρει? (Ένας απλός τρόπος γι'αρχή είναι να ψάξεις για αντίστοιχα events απ'τον Event Viewer των Windows) Πως ξέρεις ότι δεν είναι θέμα του kernel-mode driver, αντί για το igdumdim32.dll που είναι ο user-mode driver? --- Πέρα από αυτά που έχει κάνει ήδη, τα πράγματα γίνονται δύσκολα (ή χειρότερα), ανάλογα με το είδος του προβλήματος. Το επόμενο βήμα λοιπόν είναι να δεις τι παίζει, επειδή οι πληροφορίες που έχεις δώσει για το τι πάει στραβά απ'την πλευρά του driver είναι πολύ λίγες. Προσωπικά δεν έχω ίδεα από driver debugging στα Windows, πόσο μάλλον ενός compiled driver του οποίου δεν έχεις source code/symbols. --- Το άνοιξα σε disassembler και σαν executable είναι αρκετά περίπλοκο και δεν έχει πολλές exported συναρτήσεις όπως περίμενα (δες screenshot), άρα δεν θα είναι τόσο ""απλό"" όσο η αντικατάσταση κάποιων συναρτήσεων απ΄τον καινούργιο driver. Η μόνη συνάρτηση που έχει νόημα να κοιτάξει κανείς αρχικά είναι η υλοποίηση της OpenAdapter που κάνει initialize τον gfx adapter (linkαρα την αρχή της υλοποίησης της με βάση τον δικό μου driver κάτω). Anyway, έκτος και αν έχεις τις ικανότητες και είσαι διατεθειμένος να κάνεις debug και reverse-engineer τον driver, δε νομίζω ότι υπάρχει κάτι άλλο που μπορείς να κάνεις. Είναι δυστυχώς αποτέλεσμα του closed-source-ness των proprietary drivers της Intel (όχι ότι άλλες εταιρίες είναι καλύτερες). Επεξ/σία 12 Αυγούστου 2018 από vel0city
solarpower Δημοσ. 12 Αυγούστου 2018 Δημοσ. 12 Αυγούστου 2018 Στα 10άρια παίζει καλά; Αν ναι τότε τι κολλάς με τα 7άρια;
Mivas (myphone) Δημοσ. 12 Αυγούστου 2018 Μέλος Δημοσ. 12 Αυγούστου 2018 (επεξεργασμένο) 28 λεπτά πριν, solarpower είπε Στα 10άρια παίζει καλά; Αν ναι τότε τι κολλάς με τα 7άρια; Δεν θέλω να το κάνω 7 Vs 10 το thread... Υπάρχουν λόγοι που προτιμώ και χρειάζομαι τα 7άρια... 1 ώρα πριν, vel0city είπε Τι σε κάνει να πιστεύεις ότι ο driver που θες να αλλάξεις δε χρησιμοποιεί πράγματα που υπάρχουν μόνο στα Windows 10? Πως θα ξέρεις ακριβώς τι κώδικα να αντικαταστήσεις χωρίς να έχεις κάνει καθόλου debugging στο γιατί σου κρασάρει? (Ένας απλός τρόπος γι'αρχή είναι να ψάξεις για αντίστοιχα events απ'τον Event Viewer των Windows) Πως ξέρεις ότι δεν είναι θέμα του kernel-mode driver, αντί για το igdumdim32.dll που είναι ο user-mode driver? --- Πέρα από αυτά που έχει κάνει ήδη, τα πράγματα γίνονται δύσκολα (ή χειρότερα), ανάλογα με το είδος του προβλήματος. Το επόμενο βήμα λοιπόν είναι να δεις τι παίζει, επειδή οι πληροφορίες που έχεις δώσει για το τι πάει στραβά απ'την πλευρά του driver είναι πολύ λίγες. Προσωπικά δεν έχω ίδεα από driver debugging στα Windows, πόσο μάλλον ενός compiled driver του οποίου δεν έχεις source code/symbols. --- Το άνοιξα σε disassembler και σαν executable είναι αρκετά περίπλοκο και δεν έχει πολλές exported συναρτήσεις όπως περίμενα (δες screenshot), άρα δεν θα είναι τόσο ""απλό"" όσο η αντικατάσταση κάποιων συναρτήσεων απ΄τον καινούργιο driver. Η μόνη συνάρτηση που έχει νόημα να κοιτάξει κανείς αρχικά είναι η υλοποίηση της OpenAdapter που κάνει initialize τον gfx adapter (linkαρα την αρχή της υλοποίησης της με βάση τον δικό μου driver κάτω). Anyway, έκτος και αν έχεις τις ικανότητες και είσαι διατεθειμένος να κάνεις debug και reverse-engineer τον driver, δε νομίζω ότι υπάρχει κάτι άλλο που μπορείς να κάνεις. Είναι δυστυχώς αποτέλεσμα του closed-source-ness των proprietary drivers της Intel (όχι ότι άλλες εταιρίες είναι καλύτερες). Ευχαριστώ για τις πληροφοριες. Δυστυχώς δεν έχω τις γνώσεις για να πω με βεβαιότητα ότι θα τα καταφέρω, κι αν λες ότι είναι πολύπλοκο το συγκεκριμένο dll τότε είναι αρκετά δύσκολο... Ποιο πρόγραμμα δοκίμασες για να σου ανοίξει; IDA λέγεται; Με το PE Explorer πάντως δεν βρήκα πολλά πράγματα... Μόνο ότι οι νεότερες εκδόσεις έχουν πολύ λιγότερα dependencies (αυτές που είναι μόνο για 10άρια) και είναι περί τα 2MB σε αντίθεση με παλαιότερες συμβατές και με 7άρια που είναι περί τα 90MB το συγκεκριμένο dll... Επεξ/σία 12 Αυγούστου 2018 από Mivas (myphone)
vel0city Δημοσ. 12 Αυγούστου 2018 Δημοσ. 12 Αυγούστου 2018 (επεξεργασμένο) Στις 12/8/2018 στις 5:53 ΜΜ, Mivas (myphone) είπε κι αν λες ότι είναι πολύπλοκο το συγκεκριμένο dll τότε είναι αρκετά δύσκολο Ναι, όπως και να το κάνεις, graphics driver είναι, θα έχει μια πολυπλοκότητα. Στις 12/8/2018 στις 5:53 ΜΜ, Mivas (myphone) είπε Μόνο ότι οι νεότερες εκδόσεις έχουν πολύ λιγότερα dependencies (αυτές που είναι μόνο για 10άρια) και είναι περί τα 2MB σε αντίθεση με παλαιότερες συμβατές Μάλλον είναι shims προς κάποιο άλλο .dll τότε. Δε παίζει να υπάρχει τόσο μεγάλη διαφορά αλλιώς. (edit: α εννοείς 2MB διαφορά, άκυρο) Στις 12/8/2018 στις 5:53 ΜΜ, Mivas (myphone) είπε Ποιο πρόγραμμα δοκίμασες για να σου ανοίξει; IDA λέγεται Το πρόγραμμα λέγεται IDA Pro, είναι standard πρόγραμμα για reverse-engineering/debugging/κλπ. Υπάρχει trial για x86 που χρειάζεσαι, άλλα δε νομίζω ότι υπάρχει νόημα να συνεχίσεις να ψάχνεις λύση, εκτός και αν είναι καθαρά για learning experience (μη περιμένεις να φτάσεις πουθενά, δηλαδή). Στις 12/8/2018 στις 5:53 ΜΜ, Mivas (myphone) είπε Δυστυχώς δεν έχω τις γνώσεις για να πω με βεβαιότητα ότι θα τα καταφέρω Γενικά το reverse-engineering έχει steep learning curve και το να ξεκινήσεις με κάτι τέτοιο το θεωρό υπερβολικά δύσκολο. Επεξ/σία 15 Αυγούστου 2018 από vel0city
solarpower Δημοσ. 12 Αυγούστου 2018 Δημοσ. 12 Αυγούστου 2018 Πάρε ένα σταθερό βάλε τη κάρτα που θέλεις και τελείωσες. Το laptop δεν αξίζει, είναι μεγαλύτερο από tablet, και σε περιορίζει σε αναβαθμίσεις και επιδόσεις.
Επισκέπτης Δημοσ. 14 Αυγούστου 2018 Δημοσ. 14 Αυγούστου 2018 Για να μεταφέρεις "στοιχεία" από ένα dll σε ένα άλλο πρέπει καταρχάς να έχεις πλήρη επίγνωση τι υπάρχει εκεί μέσα και πως δουλεύει. Και μετά δεν μπορείς απλά να ξεκολλήσεις κομμάτια και να τα κολλήσεις σε ένα άλλο dll. Τεχνικά γίνεται, αλλά ρεαλιστικά θα καταλήξεις με κάτι που θα είναι τελείως ασταθές. Ειλικρινά τώρα θες να πειραματιστείς με την CPU σου με αυτό τον τρόπο; Άμα κάνεις καμιά μαλακία, που είναι και το πιθανότερο, θα την πάρεις στο χέρι. 90ΜΒ dll σημαίνει κάτι εκατομμύρια γραμμές κώδικα. Εκεί μέσα θα έχει 200 κλάσεις που κάνουν ένα σωρό λειτουργίες. Και θες να κάνεις reverse engineer όλο αυτό στα τυφλά; No fucking way. Εντάξει, είναι χρήσιμο ότι όντας άσχετος έφτασες μέχρι εδώ, πόσο μάλλον ότι το σκέφτηκες όλο αυτό, αλλά νομίζω ότι κάπου εδώ είναι καλό να σταματήσεις γιατί θα κάνεις ζημιά στον υπολογιστή σου.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα