Nej.. Hvis du skal ændre på værdier for andre programmer skal du ned i noget være rod. Dels kan du ikke længere arbejde med variabel-navne men skal kende præcis hukkommelsesadresse for det du vil ændre, og dels skal du finde en måde at narre windows på idet Windows beskytter programmerne fra hinanden. Hvis du f.eks. forsøgte at ændre på en addresse som eges af et andet program vil du få den berømtee "programmet har udført en ulovlig handling og afsluttes" besked.
Det kan "nemt" lade sig gøre at ændre i andre programmer uden at de går ned - tænk fx. på Diablo traineren, der var rundt for nogle år siden (for dem der ikke kender den, var det et program der læste i spillet Diablos hukommelse og gav mulighed for ændre i forskellige ting). En meget udbredt holdning er, at det da i hvert fald ikke kan lade sig gøre under Windows NT, men det kan det også - jeg skrev faktisk selv Diablo traineren om til at virke under NT. NT's bedre sikkerhed er i forhold til kernen (dvs. selve NT) og ikke mellem almindelige applikationer.
Ovenstående taget i mente vil jeg dog aldrig lave den slags programmer i VB og ikke hvis man ikke var lidt af en bit-nørd, da det som mukke skriver nemt kan gå galt...
Baunsgaard: DU har helt ret, men jeg håber egentlig også at det er det folk har kunnet udlede af mit svar... Det er besværligt men naturligvis er intet "umuligt for den der bærer viljen i hjertet!"
mukke>> OK, jeg studsede bare over din kommentar: Hvis du f.eks. forsøgte at ændre på en addresse som eges af et andet program vil du få den berømtee "programmet har udført en ulovlig handling og afsluttes" besked.
Alt efter hvilken type program det er du ønsker at ændre i er der forskellige metoder (jeg er dog meget lidt vidende inden for dette område).
1. Sætte et program til at overvåge ændringer i et hukommelsesområde for at se hvilke områder, som ændrer sig under bestemte omstændigheder. Benyttes fx. i spil - meget banalt set kan det forklares således: Du har tre liv tilbage, du finder de steder i hukommelsen hvor der står tre. Nu lader du dig dø og findes de steder, hvor der tidligere stod tre og nu to...
2. Ved at benytte et eller andet disassembler program og/eller debugger. Navnet Soft-Ice dukker op i hukommelsen, men jeg kender desværre næsten ikke. I dette scenarie kigger du på en masse assembler og finder på denne måde ud af hukommelsesaddressen.
Jeg er bange for at det nogenlunde summerer min viden inden for netop dette område :-)
God ide!! Jeg kommer alligevel ikke videre... :( Nå, men jeg havde egentlig heller ikke regnet med at få det til at virke og desuden var det kun for at se om det overhovedet kunne lade sig gøre. Med det jeg har kigget på af asm, må min konklusion nok være at det selvfølgelig er muligt, men at man skal have en forbandet god evne til at blive ved med at lede, også selvom flere timers arbejde pludselig er spildt pga. en eller anden banal fejl...
Synes godt om
Ny brugerNybegynder
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.