Results 1 to 8 of 8

Thread: Draaiend krijgen oude windows applicatie

  1. #1
    Counting your refs Paul-Jan's Avatar
    Join Date
    Feb 2002
    Location
    Lage Zwaluwe
    Posts
    2,160

    Draaiend krijgen oude windows applicatie

    Ik heb een oude windows applicatie (de timestamp zegt 2001) die ik wil proberen op te starten. Ik weet weinig details, alleen "dat hij het niet meer doet op moderne Windows computers".

    En inderdaad, zodra ik 'm probeer op te starten, volgt er meteen een foutmelding:

    Unhandled exception at 0x77512C0C (ntdll.dll) in Viewer.exe: 0xC0000025: Windows cannot continue from this exception


    De Visual Studio JIT debugger geeft als callstack een zeer informatieve:


    ntdll.dll!RtlDispatchException() Unknown
    ntdll.dll!_KiUserExceptionDispatcher@8() Unknown
    ntdll.dll!RtlDispatchException() Unknown
    ntdll.dll!_KiUserExceptionDispatcher@8() Unknown
    ... repeteer ad infinitum ...


    Ik heb geen broncode, maar een hexdump suggereert wel ... een bepaalde ontwikkelomgeving waarin e.e.a. oorspronkelijk is ontwikkeld.

    Click image for larger version. 

Name:	Hexdump Delphi.png 
Views:	148 
Size:	34.4 KB 
ID:	8100

    Windows compatibility mode lijkt niks uit te maken. Mijn concrete vraag:

    Heeft iemand tips om toch nog te proberen deze applicatie aan de gang te krijgen? Moet ik op zoek naar een betrouwbare Windows 98 (gok ik) VM?

  2. #2
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    Ik denk een 16 bits applicatie, wat tegenwoordig niet meer op een 64 bits gaat werken. Daar zal je Windows 98 kunnen krijgen. Maar ik denk dat XP of vista 32 bits ook wel kunnen.
    Delphi is great. Lazarus is more powerfull

  3. #3
    Counting your refs Paul-Jan's Avatar
    Join Date
    Feb 2002
    Location
    Lage Zwaluwe
    Posts
    2,160
    Dank je!

    De opmerking over bitness was super... de main executable begint met de fameuze "This program must be run under Win32" string, dus ik ging uit van Win32, maar ik zie nu dat er nog wat kleine sattelliet-executables zijn die de string "This program requires Microsoft Windows" bevatten - 16bits code!

    Ik weet niet of die daadwerkelijk worden uitgevoerd (de exceptie komt uit de main executable), maar er zitten dus in ieder geval 16-bits delen in.

  4. #4
    Eeen bit executable geeft een simpele foutmelding van Windows die toch echt wat minder cryptisch is dan de foutmelding die jij krijgt.
    ---------------------------
    Niet ondersteunde 16-bits toepassing
    ---------------------------
    Het programma of onderdeel 'TURBO.EXE' kan niet worden gestart of uitgevoerd vanwege incompatibiliteit met 64 bitsversies van Windows. Neem contact op met de softwareleverancier om te vragen of een met de 64 bitsversie van Windows compatibele versie beschikbaar is.
    Helaas, TurboPascal 6.0 doet het niet meer op Win10-64

    Bart

  5. #5
    Ik lees dat het hoofdprogramma wel 32 bit is. Dus die start dan wel.
    Maar als die afhankelijk is van 16 bit dll's of andere .exe's, dan kan het daar wel eens mis gaan.
    En dan komt er geen duidelijke foutmelding van Windows.
    Dat kan dan ook de genoemde exception zijn.

    Enfin... even een VM met Windows XP 32 bit opstarten en je weet het

  6. #6
    Senior Member Wok's Avatar
    Join Date
    Dec 2002
    Location
    Alkmaar
    Posts
    2,085
    En als het werkt, op een regenachtige dag, de applicatie nabouwen.
    Niet te complexe applicatie's zijn redelijk snel te imiteren.
    10.4.2, Delphi2010, of Lazarus 2.2.0

  7. #7
    Quote Originally Posted by Wok View Post
    En als het werkt, op een regenachtige dag, de applicatie nabouwen.
    Niet te complexe applicatie's zijn redelijk snel te imiteren.
    Inderdaad. Als je echter niets weet over de oorspronkelijke app is het wel handig die even te kunnen draaien

    Quote Originally Posted by Paul-Jan View Post
    Ik heb een oude windows applicatie (de timestamp zegt 2001) die ik wil proberen op te starten. Ik weet weinig details, alleen "dat hij het niet meer doet op moderne Windows computers".
    Het kan natuurlijk ook een virus zijn. Virussen uit 2001 doen het niet zo goed op modernere computers

  8. #8
    mov rax,marcov; push rax marcov's Avatar
    Join Date
    Apr 2004
    Location
    Ehv, Nl
    Posts
    10,357
    Probeer een meer volledige traceback te krijgen, b.v. met windbg. De regels die je geeft zijn al van na het eigenlijke probleem (de afhandeling van de exceptie). En met pedump oid zoveel mogelijk info proberen te krijgen.

    Veel oudere programma's checken amper of iets (b.v. een loadlibrary) gelukt is.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •