News Items

May 25, 2005 04:40AM

I swear, this must be one of those great nights...after some google searching and such, I was able to reduce the mingw version of AIMFix down to a 105KB executable and the memory usage is back down about 300K. For anyone else who happens to google this up, what I found was this:

mingw by default includes a pantload of debugging information with the executable, but there's a util that comes with mingw called "strip" so you run strip on the end product of compilation to get a streamlined distribution file. I also ran upx on it as per the upx docs to shrink it down even more.

i586-mingw32msvc-strip --strip-all AIMFix.exe
upx --best --crp-ms=999999 --nrv2b AIMFix.exe

are the commands I ran, just in case that helps anyone else who runs across this. The advice I found said run "--strip-unneeded" but AIMFix seemed to run properly even with "strip-all" and it saved another 10KB so I am using that for now. If any problems arise I'll try stripping only unneeded.

Finally, I can work on AIMFix without needing Windows to do it!

-Jay

May 25, 2005 04:01AM

Wow, what a night for programming. These things always seem to happen best at 3:50 in the morning ;)

I've managed a couple nice milestones with AIMFix (ok, so they're not a big deal, but for me they were milestones). First, I split up the AIMFix project files in preparation for getting a virus removal library of functions ready for release. The idea is to get a set of header files for use by programmers to put together simple virus removal tools. Second, I got the Windows version check working the 'official' way, so instead of a cheap hack to check the version, it uses the Win32API method. Third, I decided to try packing AIMFix.exe with UPX compression utility to see what it could do, and it dropped AIMFix from 148KB file to 64KB - not bad! Unfortunately, a bunch of anti-virus programs are stupid and decide that programs packed with UPX are automatically viruses, so I'll keep an eye out for any false virus reports for AIMFix. If you have Norton Antivirus or McAfee especially, I'd love to hear from you and see if you have any trouble with it.

Finally, and by far most awesome, I got AIMFix to compile under Linux using the mingw cross-compiler, and it runs perfectly on Windows. The only reason I'm not immediately moving my development over just yet is that mingw is producing a 700KB executable when it's done, and uses 400K extra memory - yuck. If I can find a way to get this down to at least a reasonable range, I will definitely move all my AIMFix work onto Linux, which I've been wanting to do forever. I don't mind using UPX to pack it down a little more, but it's gotta be at least under 200KB and preferably even smaller. I don't know why the memory usage is so much different, but I'll try and track that down too.

-Jay

May 23, 2005 03:05AM

I are a college graduate now!

OK, maybe this isn't really "news", but I graduated with my Bachelor's degree in Corporate Communications on Saturday from Elon University. Yes, I know, that has nothing to do with computers, but what can I say? I got interested in computing a bit late in the game so I ended up (trying) to teach myself Linux systems in my spare time rather than spending another two years or so to make it through a Computer Science degree so far into things.

The good news is, I will probably never need to do anything related to Corporate Communications ;)

As long as I stick with computing and systems administration and have some interesting problems to solve along the way, it's all good. To put this back on topic: I am working on AIMFix updates and I will hopefully get a chance to make some decent improvements over the next several weeks. I am working steadily toward some new features and in general making it run faster and more efficiently as I go. I've found some code samples for most of what I want to do, so now it's down to a matter of figuring out what it all means and how I can use it! Maybe I should just bite the bullet and actually get a reference on Win32 programming someday. Maybe if donations get high enough at some point I'll use them to buy myself a new reference book.

-Jay

May 18, 2005 09:09PM

Ok, I've uploaded a new AIMFix update that covers the previous post's problem and removes a couple new variants of the virus. Again, if you know anyone who might have run AIMFix recently (specifically at the times mentioned below) please make sure they run the current version to repair the problem with the registry key BEFORE they reboot or they will be unable to get into Windows. For more adventurous souls, i found the following info on Microsoft's website that would also allow you to get back into Windows:

http://support.microsoft.com/?kbid=307545

However, it requires mucking about with the recovery console, and a simple Windows installation repair is a better option. I would recommend only loading in the "software" section like so:

md tmp
copy c:\windows\system32\config\software c:\windows\tmp\software.bak
delete c:\windows\system32\config\software
copy c:\windows\repair\software c:\windows\system32\config\software

in the Recovery Console. However, if you have the option of a repair install, this is a much better option as it won't mess up your installed software settings.

-Jay 

May 18, 2005 05:36PM

ULTRA IMPORTANT:

I believe this only applies to Windows XP and Windows 2000, but: if you ran AIMFix between 12 and 4 today (May 18) then you MUST run init.reg to repair your userinit entry in Windows. Save this file to your desktop, double click on it, and run it to merge the information into the registry (click Yes when asked to do so). I will put this fix into AIMFix as well as soon as I can, but in the meantime, run the reg file to repair the setting.

Apparently one of the virus variants overwrites this key, and AIMFix was not correctly repairing it. If you do not run this, you will be unable to log back into your computer and will need to run a repair install of Windows. I apologize profusely to anyone this happens to, but with hundreds of variants and the several dozen that have come out just in the past few days, it's been difficult to test every single situation to catch problems like this.

Instructions for running a repair on your Windows installation are as follows:

You will need the Windows install CD for whatever version of Windows you have, then you will need to start your computer off that CD. This should be included with the materials that come with your computer, or available from a help desk.

When it starts up off the CD (it will say "press any key to boot from CD", just press something), then let it load all the stuff it needs to load. If you don't see the press any key to boot from CD and it just boots right into Windows, you'll need to enter your BIOS and tell it to boot from CD-Rom first. Look for "press F12 (or some other key) to choose boot device" or "press F1 for setup" or something like that on the very first screen when your computer starts. it's different for absolutely every computer, so just read carefully and look for anything that looks like it lets you choose the "boot device" and you'll want to tell it to use the CD rom drive.

When the install is ready it will give you the option to set up Windows now, Repair a windows install from the recovery console, or quit setup. Press ENTER to set up windows. Press f8 to agree to the terms of Windows and skip to the next screen

Now press R to repair the Windows installation, and the rest of it completes automatically. This will not erase your personal files, but you will need to reinstall all security updates (just run Windows Update after you are finally back in Windows)

-Jay

Archives