Avatar billede mad_man Nybegynder
22. februar 2003 - 18:42 Der er 8 kommentarer og
1 løsning

lave en .dll fil fra windows til so til linux (Counter-Strike)

jeg har en fil som er kompilet og den vil jeg gerne have "afcompilet" eller hvad det hedder og få sourcen ud af det er dette muligt ????
Avatar billede Slettet bruger
22. februar 2003 - 18:47 #1
Du ska nok bruge en decompiler. Men jeg har kun hørt om decompilerer som decompiler til maksinkode(Assembler)...
Avatar billede arne_v Ekspert
22. februar 2003 - 18:48 #2
En .so er det samme til Unix/Linux som en .dll til Windows.

Altså:
  .cpp -> .obj -> .dll på Windows
  .cpp -> .o -> .so på Unix/Linux

Generelt kan man ikke decompile native excutables til C kode.

Der har været arbejdet på det. Men det er stadigvæk på
eksperimentelt niveau.

(Java og VB er en anden sag)
Avatar billede mad_man Nybegynder
22. februar 2003 - 18:48 #3
:( trist
Assembler er ikke lige min stærke side ;)
Avatar billede mad_man Nybegynder
22. februar 2003 - 18:49 #4
hmm øv....
Avatar billede mad_man Nybegynder
22. februar 2003 - 18:51 #5
kan man så ikke lave en .dll om til en .so på en heller anden måde ????
Avatar billede arne_v Ekspert
22. februar 2003 - 18:52 #6
Aldrig hørt om det.
Avatar billede mad_man Nybegynder
22. februar 2003 - 18:53 #7
:( øv
Avatar billede hsloth Novice
22. februar 2003 - 22:12 #8
Jeg vil ikke helt afskrive muligheden for at konvertere et windows .dll til et .so på intel-linux :

.dll'et indeholder foruden den eksekverbare kode al den symbolske information der skal til for at loade det.

Selve den eksekverbare kode i dll'et kan jo stadigt eksekveres da det er maskinkode, og der stadigt er tale om et intel (x86) baseret system, og funktioner har et veldifineret interface for parameter overførsel m.v..

Jeg er ikke ekspert i object formater, men det der skal til er at man deler dll'et op i symbolsk information og den eksekverbare kode der hører til hver funktion. Herefter bruger man den udtrukne symbolske information til at danne et .so ved hjælp af en linux linker (og en del fifleri), den eksekverbare maskinkode skal så lægges ind i .so'et.

Et problem man givet vil rende ind i, er at det .dll man tager udgangspunkt i bruger andre .dll'er, som man jo også skal konvertere. Eller værre endnu, bruger windows specifikke operativsystem services.

Hvis der ikke findes en rigtig "opskrift" eller et tool ude på nettet et sted, og jeg har altså ikke lige kunne finde et (3 minutter på google), så tror jeg det er en opgave man skal afsætte en del tid til. Jeg ville gætte på 40-50 timer, og forvente en successrate omkring de 50%.

Med mindre det drejer sig om et bibliotek som du er 95% sikker på ikke kalder andre dll'er eller er afhængig af operativsystemet eller drivere, så vill jeg ikke give mig i kast med projektet.
Avatar billede mad_man Nybegynder
13. maj 2003 - 18:30 #9
lukker lige det her spm
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester