Jag har två exe-filer som jag inte får igång men vill jämföra och visa på de likheter som finns i källkoden. Båda filerna har nämligen en gång i tiden byggts på samma källkod, men de har för ungefär ett år sedan gått skilda vägar i utveckling. Dock så skall inte skillnaderna vara så stora. Det handlar mest om designförändringar som byte av bilder och ikoner i programmet samt ändring av typsnitt. Men den funktionella källkoden skall vara samma till 95%. Visual Basic 6.0 användes som programmeringsspråk med samma kompileringsalternativ till båda filerna. Filerna är ca 7500 kB stora. Det finns färdiga program för detta, och det är rätt svårt att göra. (så vitt jag kan komma på nu). Med programmet HexWork kan du scanna båda samtidigt och Jo, det krävs ju en mänsklig inblandning för att en sån jämförelse skall bli vettig, och det är svårt i stora program. 7.5 MB är kanske inte helt kul att kolla igenom.Binär jämförelse mellan filer (exe)?
Hur skall man göra en jämförelse av dessa två likvärdiga program på ett lämpligt sett?
Är det möjligt att se om dessa bygger på samma källkod och isåfall hur mycket?
Tacksam för alla synpunkter och råd!Sv: Binär jämförelse mellan filer (exe)?
Det går ju naturligtvis att analysera vilka funktionsanrop som görs, men då får du ju jobba med assemblerinstruktioner, vilket kan vara ganska knepigt det med.
Skall du bara jämföra filerna får du göra något sånt här:
1. Börja från början av filen. Gå igenom byte för byte och när det slutar vara lika så har du hittat första sekvensen.
Nu kommer det svåra; du får typ kolla om hela återstående filen innehåller "nästa sekvens". Denna sekvens måste ha en minimilängd för att betraktas som nån vettig information. Detta tar grymt lång tid, och kan ge dumma resultat (om "nästa sekvens" finns sist i filen).
Ett annat sätt skulle vara att leta på båda filerna samtidigt.
Typ en position för fil A och en för fil B. Sen får du ha en "ok-position" för båda (så långt man verifierat filerna). de senare kallar man a, b.
Så letar man från a till A efter den sträng som finns vid B, och motsvarande åt andra hållet. Rent intuitivt känns det som om det missar något...
Vet inte om detta hjälpte mycket, men jag tror att det lämpligaste är ett redan färdigt program i detta fallet...Sv: Binär jämförelse mellan filer (exe)?
se var dom skiljer sig åt. Men att sedan anlysera vad som är skillnad
och vad det har för betydelse blir inte lätt.Sv: Binär jämförelse mellan filer (exe)?