Thread: Urgent help needed: can't start darkloader anymore....

Urgent help needed: can't start darkloader anymore....

  1. #1

    Exclamation Urgent help needed: can't start darkloader anymore....

    I was playing CoSaS this morning and after completing it and wanting to load it happened!!! ERROR!!

    "Exception EReadError in module DARKLOADER.EXE at 00011695
    Error reading questmemo.Color: Unable to get Interface"

    I've tried uninstalling and re-installing both Thief Gold as Thief II as well as Darkload, but nothing helps!!!!


    I'm really getting desperate here!!

  2. #2
    questmemo.Color is the color attribute of the questmemo object. I believe Darkloader is coded using Object Pascal, and that Delphi is probably the programming environment.

    Try renaming darkloader.ini. Also delete the darkloader files in the Thief install paths.

    Try installing Darkloader, uninstalling it, and then reinstalling it to a different path. It should be in its own path and not pollute the Thief install paths. You should also install to a new path (i.e., there are no remnant files in the path where you install Darkloader).

    You didn't mention which version of Darkloader that you are using. I have version 4.1.

  3. #3
    ok..wil try that.... I'll get back if it works.

  4. #4
    there is no darkloader.ini to rename as of yet (since it won't even start up)

    I did remove darkloader out of FM directory and installed it in a new one, but the problem remains... (and yet I have 4.1)

  5. #5
    Besides running a full anti-virus scan (after updating the anti-virus software), also check your registry for keys or data values of "darkloader" (also search on "darklo" to cover the 8.3 filename). Perhaps you are using some software that screws up the load of Darkloader. Even Windows has its own application cache to track from where .exe files are executed.

    Try starting up in a clean state by using msconfig.exe to disable all startup programs. For Win2K, you'll need to download a copy of msconfig (http://www.thetechguide.com/downloads.html, but they seem to be down right now) or alternatively use Mike Lin's Startup applet (http://www.mlin.net/StartupCPL.shtml).

    Maybe your copy of Darkloader is corrupted. Download the .zip from the author at:

    http://www.bjoernhenke.de/darkloader/index_e.htm

  6. #6
    ok...how do I check that register?

  7. #7
    The registry to which I referred was:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Management\ARPCache

    Don't really know what it is used for and I cannot find anything at Microsoft about it. The "ARP" portion of the key name would tend to make me think it has something to do with Address Resolution Protocol with is part of IP. Yet I have dozens of programs listed under here that do not connect to hosts and having nothing to do with networking. First just do a search in the registry on "darklo" and see if you have any matches. There may be nothing in there for it.

    Some authors will distribute incomplete programs. They compile just the code and presume that external function calls will be handled by DLLs that are presumed to already be on your system. For example, many VB programs require that you separately and previously have installed the VB runtime libraries. The author of Darkloader doesn't mention any dependencies so presumably his was a static compile in which all the libraries were included within the compile. He does mention some .dll files that are required to run but these are included in his "install" (which unzips them into the same path as the darkloader.exe file). The author used to include the source code in the .zip distribution file for Darkloader. But in version 4.x when he went to an .exe setup file, the source code is no longer included (which, I believe, violates the GNU license or its intent). I could not find a link on the author's web site to the source code. So I cannot dig around in the Pascal code to see what is questmemo (it's been 20 years maybe since I played with Pascal code but usually it's readable enough to understand).

    Before monkeying around in the registry, have you tried to do a clean bootup by using msconfig.exe or the Startup applet mentioned before to eliminate all non-critical startup programs? <b>You don't mention which version of Windows that you are using.</b> If NT-based (Windows NT4-2000-XP), have you disabled non-critical services using the Services admin console?

    My guess is that questmemo is the mission description area, the bottom pane, in Darkloader's screen. It reads from <filename>.zip a file within that .zip file called <filename>.txt (i.e., the mission description is in a .txt file by the same name as the mission .zip file). However, if darkloader.ini is missing, Darkloader should start out by presenting you with a Setup screen (where you enter the paths to the Thief games, fan mission files, and other config parameters). With darkloader.ini missing (renamed, moved, or never created), you don't get a popup screen first asking you to setup the program?

    <hr>
    UPDATE:

    I did find a link to the source code at http://www.bjoernhenke.de/index_e.htm. The files with "questmemo" in them are main.tfm and main.pas. The .tfm file is, my guess, the visual form file (i.e., what describes the layout of the form presented to you for the program) along with its list of objects, one of which would be "questmemo". Since I don't have Delphi nor plan to install it, I can't say which object on the form is for questmemo. The .trf file is not a human-readable file although you can dig through it using an editor, like PC Mag's FileSnoop.

    So then I looked in main.pas. I didn't bother deciphering all the code or even the code involved questmemo. But I did see that it was scanning the contents of the .zip file and loading the contents of any .rtf, .txt, or .wri file into lines within the questmemo object. I never found a questmemo.Color as either an attribute of the questmemo object or as an implied function call. In fact, "color" isn't found anywhere in main.pas except for the questgrid object (the grid in the upper lefthand pane) but only seems to be for the highlight [background] color when you select an item in the grid (of either blue or white).

    Because the color attribute of the questmemo object is never referred to or set, and because the absences of a darkloader.ini file should have first popped open a Setup window (a mission file hasn't been selected at this point), is why I wonder if you have a valid and/or uncorrupted copy of Darkloader, and why I suggested downloading a new copy from the author's web site.

    The author added support for RTF files in version 4.1. It is possible this support is "inadequate" in that it appears to rely on some built-in library for its support, or presumes that the questmemo object can adequately handle the display of RTF content. The author makes no differentiation in loading lines into the questmemo object whether the source input is from an .rtf, .wri, or .txt file. But then it wouldn't be reading any RTF content until after it passed the check for its darkloader.ini file, so without a darkloader.ini file then the first action is to present the Setup window, not read .rtf, .wri, or .txt files for the description of a mission not yet selected and not yet displayed.

  8. #8
    I still don't understand what I have to type in to check that register...

    (and I use win 98)

  9. #9
    The registry editor is started by running "regedit.exe". However, if you are unfamiliar with this tool (which makes changes *immediately* rather than letting you choose to save changes on exit or close, so there is NO undo) and are unfamiliar with the registry then you shouldn't play with the registry. Before editing the registry, it might be wise to export it all (or, at least, for the keys that you make changes) so you could import back the old values if you make an accidental deletion or change that makes things worse. For me, there is almost nothing for Thief found in the registry (that could severely affect its operation) and nothing for Darkloader (other than its uninstall entry) so forget that for now. I only mentioned it because it is possible that another program (besides Windows or an enhancement to it) might've been doing something in your system that could screw up Darkloader and that's why I suggested searching on "darklo" to see what might be in the registry and to see what might be interoperating with it.

    For now, just use msconfig.exe to disable all startup programs, reboot, and then do a fresh install of Darkloader in a new path to see if you can then start it up (and get the Setup screen as the first window when you run Darkloader). I don't know what is your full complement of software installed on your system (and I really don't want to know) so that's why I suggest using msconfig to get all that other stuff out of the way by not loading it to see if Darkloader will run under a cleaner environment.

    Be sure to install the copy of Darkloader downloaded from the author's web site. I suppose it is possible you got a viral infection but it would unlikely to target just Darkloader since it is such a vertical product (i.e., very limited in the breadth of its target audience). Might be a good time to do an update to the anti-virus software and do a full scan.

    Also run CHKDSK /F or ScanDisk to ensure there are no structure problems with the file allocation tables or directories.

    If Darkloader still errors after using msconfig to disable all startup programs, the next things that I'd look at would be Windows, DirectX, and drivers (video and audio). They can get corrupted. Reinstall DirectX. Reinstall the drivers (so you might as well check for the latest versions, too). And reinstall Windows and then follow up with service packs and Windows Update to ensure the Windows install is up to date from the static and old files on the CD used for the reinstall.
    <small>Of course, doing a backup is always prudent when making all these changes. You'll want to be able to go back to your original setup, even if Darkloader doesn't work, to get everything else working again if all the reinstalls and updates screw up your system. I recommend using Powerquest's DriveImage to save disk image backups to create snapshots of your system; restoring full backup from tape only works if you know how to do replace of inuse files or your tape backup utility runs from a self-booting DOS environ (that does NOT startup a base copy of Windows to operate). Restoring from disk image snapshots is easier than restoring from tape and guarantees you get back to the exact same setup as for the snapshot.</small>

    It is possible that Darkloader was compiled so it has dependencies; i.e., it expects some basic files to already be included in a plain install of Windows or some very common libraries to have been additionally installed. The author makes no mention of external dependencies. You might have to contact the author (freeware@bjoernhenke.de) to ask why his v4.1 of Darkloader is issuing this runtime error. I can only look at his Pascal code, not how he actually compiled it. Before doing all the reinstalls which would do some major "touching" of the entire system and could cause further problems, see if you get a response from the author. He might have a quick answer, like, "Oh, yeah, you need to have these other additional runtime libraries installed." If he relies only on what should be included in a Windows install, then it would like like you need to do a Windows reinstall followed by updates to ensure Windows hasn't gotten corrupted.