PDA

View Full Version : OT: Strange Windows behaviour



Evan
09-03-2007, 02:02 AM
I was cruising about in the directories on my laptop when up pops this message:

http://vts.bc.ca/pics2/secrisk.jpg

Now, I don't use Internet Explorer to cruise the local folders. I use Windows Explorer, a different part of the system. I have never seen this message before and it is singularly unhelpful. I don't have any viri or other malware stored on this machine. Those items are kept for study purposes on a machine with "airgap" isolation. Has anyone ever encountered this? I don't run any anti anything software so it must be a system message. What freekin business does Internet Exploder have looking over my shoulder anyway? I was under the impression that IE7 was "disentangled" from the OS mainly because of the legal actions of the EU fair trade commission.

BadDog
09-03-2007, 02:07 AM
Check for a customized folder (desktop.ini) that specifies a custom web page to view on that folder. Either that or the folder is not a "real" folder, but a shell extension.

That's the only things I can think of...

Evan
09-03-2007, 04:29 AM
I have no web content enabled outside of the browsers with only one exception. I use Windows Explorer to access my FTP server, nothing else. I rarely even use IE at all.

I keep the machine very clean, as you can see from this look at the registry.

http://vts.bc.ca/pics2/regedit.jpg

andy_b
09-03-2007, 10:01 AM
did you hit "Yes" to continue?

andy b.

QSIMDO
09-03-2007, 10:43 AM
I was going to upgrade to IE7 some months back but our IT guru at work said "Ixnay! IE7 has more junk hanging off it than a circus cart!" so I deferred to those in the know.
Happy am I from the sound of things.

Evan
09-03-2007, 11:12 AM
did you hit "Yes" to continue?
Of course. I have everything backed up on a backup server in the basement as well as on my server in town. Besides, if Microsoft can't be more specific about what the "threat" is I have doubts that there really is one. Although I don't run any antivirus etc that doesn't mean I am not careful. I do run the Netcraft Toolbar that provides a risk assessment on every site as well as providing site information.

http://vts.bc.ca/pics2/ntool1.jpg

http://vts.bc.ca/pics2/ntool2.jpg

nheng
09-03-2007, 12:06 PM
Evan, If you ran IE instead of Firefox, you'd know what the problem is ... M$ :D

It sounds like the page had content which only IE knew how to open. You might want to page thru "file types" in the tools section of windows explorer. Tedious at best but you may find what summoned IE from its tomb. You may be able to do this more quickly from the registry but I've never had occasion to look into that. Den

Evan
09-03-2007, 12:19 PM
The section that deals with file associations in the registry is perhaps the largest and most difficult to deal with. Finding anything that happens to be associated with IE is like looking for a tall guy at a basketball tournament.

Since I have FF set as the default browser it shouldn't have invoked IE. Also, the directory was full of program setups, not something that should wake up anything except a virus scanner, which I don't use.

It's not a big deal but I have spent many an hour dealing with XP on hundreds of machines, perhaps thousands over the years and haven't seen this before even on the worst infected machines.

BadDog
09-03-2007, 06:11 PM
I have several points, but none of much help.

The part of IE security in question is "zone based". Different things are allowed based on the zone of origination combined with various configurable settings. As an example of what my generate such a vague message, consider a web page with scripting that comes from the internet. Some scripting can be harmful, depending on what it tries to do. And some things considered risky if it came from the internet, are not considered risky if it came from, say, and intranet. So IE sees scripting on a page, and the preprocess determines it is trying to access FOO, which might be valid and expected in that context (depending on why the user is accessing that page), but also might be a hidden attempt at some exploit, so a vague warning is issued. MS does this because of studies showing that telling the user about scripts and possible exploits of FOO would likely be received with even more negativity than vague messages. They can't win. If it's vague and just distills out the important "this might not be safe", removing the details most wouldn't understand anyway, folks complain about being vague. But when detailed messages are given, folks complain about the techno-babble and hit (usually) the default button without bothering to read. Every SINGLE word added, dramatically increases the likelyhood that the user will just huff and clear the screen. "Studies show" that vague messages are generally the most productive and well received even though the public perception is usually one of "MS is just too lazy to provide a good message". You can be very sure that inside the program, it knows EXACTLY what was detected and a message of any arbitrary complexity could be show just as easily as a vague message. Those vague messages are the result of "lowest common denominator" marketing for consumer consumption, and considering my job, I expect I HATE them worse than most of you, even though I do understand why it is the way it is. But like "conspiracy" theories, folks enjoy these misconceptions far too much to let them go, so they just keep on going.

Having FF or IE set as default browser really just means that it's associated with HTML and several other file types (among other things, but that's the gist). That says nothing about other file types that may have IE set as the owning application. For instance, you could set IE as the associated program for text files, and it's setting as "default browser" would make no difference.

And, it can also vary depending on what OS and folder settings you are dealing with. On Vista, if you have a folder set to one of the views with "thumbnail" reps for the files, then the "owning" application may be used to generate the thumbnail, or a built in viewer (IE in some cases) may be used to generate the "live view" thumbnail. That's how you get not only pictures you can see in the folder view of WE, but also see the title page of a Word doc, or a PDF file, and so on.

And, as I mentioned before, folder "views" and shell extensions both throw their own curves into the mix.

So it has nothing to do with "infection" so far as I can see, but rather with some interaction causing IE to get involved, and some part of that involvement triggering it's automatic warning code. The interactions can be quite complex, so without knowing more, it's impossible to predict what IE thought was a potential risk, or even why IE was running.

wierdscience
09-04-2007, 01:34 AM
Evan,the new Dell I bought my mom does that.I though it was a Vista quirk,but looks like it is all IE.The only thing I noticed is the defualt security settings are set to "worry-wart 12y/o babysitter" instead of something more sensible.

Oh and on a different subject,Vista,without a doubt is the mother of everything that sucks.Not that the OS itself is all that bad,it's just NOTHING is truly cmpatible with it.Every add on piece of hardware requires downloading drivers and patches before any attempt is made to install.Otherwise it's reinstall windows everytime,good thing it burns CD's:D

uute
09-04-2007, 03:50 AM
I thought strange OS behavior was Microsoft's mission statement.

I run windows and problems are the only things that Microsoft ever seems to upgrade. Each incarnation of Windows has bigger and better and more complex problems - and they're faster and more closely spaced too, you should get something for all that extra cost.

Sorry Evan, I'm no help.

Evan
09-04-2007, 05:04 AM
Those vague messages are the result of "lowest common denominator" marketing for consumer consumption,...

Then why messages such as "XXXX has performed an illegal operation..."?

I don't know how many customers wanted to know exactly what law was being broken.

or "XYZ has caused a FATAL ERROR".

Does that mean I need a new computer????

or "Runtime error in Module XYZ at EF79AA0C:0047FAC7".

Now that's specific enough. Too bad there is absolutely no documentation available to explain what it means.

Of course the winner is the infamous BSOD (Blue Screen Of Death). It's still there in XP although Microsoft "solved" the problem by simply making the system reboot automatically right in the middle of what you are doing with no warning. XP can be set to show the screen anyway which is extraordinarily useful to most users. Then they can take the advice to contact their system administrator or technical support group. No mention of contacting the supplier of the product though. :rolleyes:

http://vts.bc.ca/pics2/bsod.gif

I still haven't installed my "free" copy of Vista.

BadDog
09-04-2007, 04:25 PM
Each in order.

"Illegal operation" generally means the that the application tried to access restricted data, usually an invalid memory location due to a bad pointer. A pointer (numeric memory address) may be bad due to incorrect "pointer arithmetic", or more likely, internal corruption of the stack and/or heap memory. Or perhaps it referenced OS reserved address ranges, or “protected” application executable pages on later architectures. This is an application/programmer bug common to C++ (and assembly) programs, much less common in "managed" program environments like .Net and Java. Since OS facilities are really just programs, this can occur in the OS itself, but other than W9x, this is generally not the OS and the OS can't begin to guess why the program tried to access protected resources.

Basically, it's telling you EXACTLY what happened. It's just not very useful. To rephrase the message, but no more useful, "The program tried to access something that it is not allowed to access. I have no way of knowing why it would do such a thing and can only assume that its internal state is corrupt, so it must be shut down before it can do more harm". Is it helpful to tell the user that you tried to access protected memory? Or an invalid mapping? Not really. So they give you a generic message with terms that have meaning for most people and leave it at that. As a programmer tasked with finding out what happened, *I* wish they gave more info, but these messages are intended for the average Joe.

"Fatal Error" is also a program error, not an OS error. Generally meaning the program was given bad data or has somehow gotten into an invalid state. This is *exactly* what I meant about the "lowest common denominator" messages. It told you what caused the error, and that it was fatal/unrecoverable. What is it expected to tell you? Should it describe internal data structures to the average user and explain why it thinks it can't proceed? What could the average user do with that? Again, the programmer hopes for more info, and often HAS more info in the system Event Log or some disk file. But again, what would the user do if they find that info? Nothing... And why would they think they need a new computer? Fatal error, the program died, whats hard to understand? What should it say that Joe public would find more useful and *clear* than "Fatal Error".
And of course there is further confusion when some programmers (including some at MS) misuse “standard errors” when better error messages would be helpful, but that’s not the common case and so is not relevant to this discussion.
"Runtime error" is a good example for your point though. That message is a bright and beautiful sunrise to me when I see it in the context of fixing a program crash. Even if I can't attach a debugger right then, it gives me something to work with because I can find out exactly where things went wrong, and hopefully backtrack to the cause and fix it. But to a user, "Yuck!" On the upside, if you get that 1 in a 1000 users who have enough forethought to copy down the message *accurately*, you can pass that on to tech support and some programmer will be oh so grateful. But 99% of the time all you get is "The program crashed and I hate you!". You’re lucky if you get "The message had some error number, but I don't remember what it was! I hate you!" So your right, that info should be logged for retrieval (Use the event Log or disk file, never expect the user to be useful ;) ) and the user should never see that. In most contexts, that one probably should have been "Fatal Error" <grin> ;)

The final BSOD is actually another case of "too much information", and a point for my side. <grin> Again, the user can do NOTHING, so why show the info? Better to just say "Fatal Error". ;) I know what it means, and *I* can't do anything about it (well, this one I could, but not most). This happens (generally) when something goes wrong in Kernel Mode, and that usually means third party driver code. In this case, a DRM "root kit" driver. So, you install a random driver that screws up a pointer and tries to read from an invalid address, resulting in a "page fault" (for memory that is not paged) in the virtual memory manager, and now the system is in an unstable state. What is the OS supposed to do? One of the major tenants of reliable programming is that when you have unexpected faults (i.e. unhandled exceptions), you MUST "fail fast" (hopefully with memory dump and logged error info!). Because the longer you are running, the more chance you have to trash critical data and be in even worse shape. So the OS BSODs without allowing any data to be flushed or any further damage to be propagated. The hope is that at least you can use the last save or LKG (last known good) which might be auto overwritten with corrupt data if the OS (or application/driver) is allowed to soldier on in an orderly shutdown. BTW, a BSOD can create a core dump that I, as a developer, can load in KB or other kernel mode debugger to tip-toe through the system state as it existed at the time of the crash. That’s it’s real purpose, but useless for the user…

As for no mention of contacting the supplier, that would be Sony (or rather their supplier) in this case. But how is the OS to know who the vendor is? Or if Kernel32 was passed bad data from a driver? Just seeing Kernel32 listed doesn’t mean there is a bug in Kernel32. So, it told you everything it knows, and what you need to know. You have the driver name, and it told you to reboot safe mode to disable it. Most users won't have a clue how to do that, so the OS's parting advice is "contact someone who knows how to do this". Maybe you think it should just disable the offending driver automatically on its own? But then they would get crap about "thinking they know better than me what needs to be done!!!" And it might have other dependencies that the OS can't know about, so other things would break and you would have tech support calls for seemingly unrelated errors because the user never mentioned the first failure in another vendor’s product.

BTW, I do agree that the *OS* should ideally protect itself from BSOD type crashes. The problem is that, in the current reality, hardware drivers NEED to be able to do things that can corrupt internal system state. However, isolation is improving and BSOD is becoming a VERY rare occurrence. I run "ragged edge" systems, and other than hardware failure, I haven't seen a BSOD crash (or silent auto reboot, which is, in fact, not the same) in probably 2 years. That includes 3 laptops running XP, and 3 desktops running XP (one recently rebuilt and running Vista).


Generally, MS and other vendors DO provide meaningful errors when there is some hope that the user can correct it on their own, even if only for "power users" like you. But there are many categories of errors where the user has no hope of doing anything about it. Should each of these hopeless errors be spelled out in excruciating detail for novice users where even a programmer with debugger must recompile to fix? Do you want to pay extra for:
1) All the effort to identify all those errors individually, figure out all the particular ways (sometimes there are MANY!) that a program might have gotten into that state,
2) Create those meaningful messages.
3) Test all those failure modes to make sure the right message is displayed.
4) Localize all those extra messages into 50 different languages.
5) Other costs I don't feel like enumerating and explaining...

Or would you rather have a message that just says effectively, "Oh no! I've fallen and can't get up! There is nothing you can do, so I'm not going to try to explain. I'm just going to exit now. Good bye..." ;)

You actually just demonstrated my point rather well. MS gets crap for overly vague error messages like "Fatal Error", and they get crap for TMI messages like the BSOD and even Runtime Error. So, if there is nothing the user can do, what should be in the message other than "Hey, something is screwed up, contact those responsible or who might be able to figure it out."

BadDog
09-04-2007, 04:26 PM
<continued>

Believe me, I also have issues with MS. Probably more than most of you put together. They, like most all software vendors (*including* Mac and other platform/OS distributions) have things that could be done SO MUCH better. I'm all for MORE information when things go wrong and often bemoan the lack of info relating to crashes. But the *USER* does not need to see that and they wouldn't know what to do with it if they did see it. It’ll just piss them off more than a vague, “Sorry Charley!” message. The USER will NEVER be happy when a program, particularly the OS crashes. If there is no way to fix it and save the last 3 hours work that they couldn't be bothered to save, they are going to get furious and blame the vendor no matter how succinct the message.

There is also a point of "minimal return" beyond which there is almost no return on hashing out potential error paths. The "costs" associated just don't pay off in the long run, particularly with localization and testing overhead factored in (you HAVE to test all failure modes too!). It's like logarithmic decay, you can never actually reach zero...

So again, what is MS supposed to do with crashes the user can't fix, crashes that more often than not are due to faulty third party hardware drivers or applications that were not sufficiently tested?

And I don't blame you on Vista. It has security enhancements that, while they annoy the user (another "can't win" due to tenaciously held user ignorance), WILL cut down on the damage done by viri and the like. But XP can be made just as secure with techniques I've mentioned in the past. Beyond that, it's just "eye candy" and resource consumption. I delayed myself as long as I could, but now have client requirements that forced me to build a new Vista system... :(

<sigh> I always regret getting into these discussions. It takes SO long to try to explain things, and it never seems to make any difference. Like Galileo arguing against a flat earth (and no, I don't want to start that debate), nobody wants to hear it. And there will always be multiple salvos from Mac and *nix fans, which is a different set of discussions altogether, but gets rolled all into one. <sigh>

Now I've got to get some paying work done or I can't afford cool new toys for my shop... :D

tattoomike68
09-04-2007, 06:22 PM
I admin some web sites with some big time geeks and we are all boycotting windows vista.

vista may run great when 4-8 gigs of RAM is common. Till then you can get linux with add ons that kick the living crap out of vista, runs faster and is rock solid.

I will not tell anyone to get vista unless it comes on the machine and then they need the motherboard's max ram for best performance.

I dont care if you have a few servers, I would never have microsoft running them, unix/linux is what you want for a server. I know.

For a long time now all my sites are run on a linux server. That will not change.

I dont write code for home boxes, I write code for servers for a smooth web site.

nheng
09-04-2007, 07:13 PM
"Vista may run great when 4-8 gigs of RAM is common"

Yeah, and when 7GHz cpus are also common it will be on a par with pre-Vista systems. Throwing RAM at Vista speed issues is a typical response from the software world (in general ... not you :) ). I hear it every day and just about tossed my lunch several months ago when I heard the comment; "Don't spend time improving the speed in that area ... we'll have new CPUs in a few months".

Vista wants RAM because Vista is using RAM. If those gigs are being utilized, they WILL slow down the system regardless of what sort of caching, pipelining, etc. is taking place.

OTOH, Vista is bloated and slow because WE collectively asked for all the cr-p that is included in it.

BadDog
09-04-2007, 08:14 PM
As I said earlier, I generally agree on the Vista hold off recommendations. And you're right, the bloat is from what the consumer is demanding. Unfortunately, it's often not easy to ditch the extra crap we don't want. Just not worth it to do the extra work to give us those options. It's mainly the testing, thats a HUGE expense that nobody ever factors in when they want "options" like removing features at random. Same reason auto manufacturers limit combo options. Folks will pay about the same whether stuck with an option "package", or full customized sheet like you could do in the 60s. But going with "packages" and fewer real options is just much more efficient and helps keep the price in the tolerable range while still boosting their profit margins. Same thing happens with software, but folks prefer to apply conspiracy theory to why IE is "bundled". Not saying that MS didn't consider all the competitive benefits when making the decision, I'm sure they did, just that it was a good decision for other than competitive reasons. But real reasons don't matter, it's much more fun to crucify them as an evil empire of conspirators who did it JUST to knee-cap Netscape. But that's another debate too...

As I also said, my current primary client now is "targeting" Vista as the launch platform for an upcoming program that probably be on the market in about 1-2 years. Probably the right choice for them, but it made me have to go to Vista in spite of my preferences not to do so. So, to help minimize the pain, I bought some new hardware specifically for Vista. Mainly a Core-Duo, medium-high end video, 4GB of dual channel LCL DDR2-800 RAM, and a pair of fast raided SATA drives. I have NO perf issues doing some pretty hefty stuff that most folks would never even approach. That includes running multiple virtual machines simulating a multi-machine distributed application, all simultaneously on my single Vista box. And I also have Glass and all the other effects turned on (needed for dev since we will use Glass CA).

And a final point, Vista does use memory like no OS before. However, you can't look at memory usage metrics for the whole story. There is the amount *needed*, and the amount that can be *utilized*, and then there is the amount left unused.

It is true that XP and most any other older OS will *need* less memory than Vista. That is undeniable. If what you have is less than what is *needed*, life will suck and you will hate Vista. But the same is true of any OS, it's just the Vista *needs* more.

And of course, the amount remaining unused is just that.

The interesting story is in the amount *utilized*. This is where Vista does things that few other OS implementations have attempted to do at all, much less to this level. Memory that would have been *unused* (i.e. wasted) is now used to "prefetch" all sorts of stuff. Extra HD caching, perloaded binaries, search indexes, all sorts of things get socked away into that memory while the system is otherwise doing nothing (perhaps while your away, or reading this post). Systems have always tried to grab the "low hanging fruit" to preload the most likely things and speed performance. And some applications, like office, have often been sorely thrashed for running the Office Preloader that made office apps launch almost instantly, basically by preloading them all! How evil!!! You used memory I wasn't otherwise using to load something for me faster!!! Of course, if you didn't have enough memory to cover what is *needed*, that would "page" things you needed to preload office stuff you might not need now, and so that was, in fact, bad to just arbitrarily do. Vista is smarter than that and it won't do all the preload UNLESS you have extra memory that no application is using. If you DO launch some bloated app, lets say, Photoshop (can't just bash MS can we, this should be equal opportunity bashing, right? ;)), and it wants that memory Vista snarfed up, then Vista pitches the stuff it deems least likely that you will need, and so nothing "important" gets paged.

In Win9x, over 1GB was pretty much totally wasted. NT4/Win2k/XP/etc. did much better at actually "using" large amounts of memory. Vista just takes it to the next level and agressively utilizes the extra memory, while returning it to the application pool when/if needed. This is basically using *extra* memory to give more perf improvement than a faster CPU, or even more than an extra CPU in many cases. How is this a bad thing? Does seeing unused memory just make you feel good inside or something? I prefer to see it used to my measurable benefit, and that is what Vista is doing...

So yes, Vista does NEED more memory than XP. If you only have hardware sufficient for XP, then for god's sake do not load Vista, you will hate it. But throwing lots of extra memory at Vista (make sure your Mobo supports it, not all mobos that will hold 4GB will actually let you USE 4GB!) will actually have some nice payoffs in ways you might not expect. It even (supposedly, but not sure how much) learns from the way you use the system, what things you are likely to need most often, so that it can keep those around and ready rather than hitting the HD that takes MANY times longer than a memory access. With 4GB, my system seems to be keeping the entire terabyte of total indexed hard drive space in memory. Searches for most anything on the HD are pretty much instantaneous, which works REALLY well for my use. As of this moment, my current committed memory size is just under 3GB, and I'm quite happy with Vista using that memory to speed things up. But, other than the VM (virtual machine) performance, which most wouldn't need, I expect most folks wouldn't notice any difference if the system only had 2GB, where they would likely see a committed memory size of something around 1.2GB.

Make sense?
<shrug>

OldToolmaker
09-04-2007, 10:11 PM
Just another of the many reasons I wub my MAC!:D

BadDog
09-04-2007, 10:19 PM
Mac has it's own issues. But I'm getting tired of typing, and Mac folks are much more agressively in denial than general anti-Windows folks, so I'll just pass on that one... ;)

<applause>

lazlo
09-04-2007, 10:22 PM
"Illegal operation" generally means the that the application tried to access restricted data, usually an invalid memory location due to a bad pointer.

This is probably way more information than you want, but a Windows "Illegal Operation" is Microsoft's translation of the x86 processor throwing an Undefined Opcode (UD#) or Invalid Page Fault exception. I.e., it's part of the standard x86 architecture.

Like you say, it's usually because of a corrupt stack pointer.

BadDog
09-04-2007, 10:41 PM
Yes, by far and away the most common way to hit one is to toast the return address from the call stack. That gets you very quickly into the situation where you're trying to execute arbitrary data, which is itself the heart of the over publicized "buffer overflow" exploit. Or bad function pointers, dynamic code gen, compiler bugs, unloaded DLLs, and so on in that same vein. But, IIRC, an invalid op code (in the strict sense) is not the only way to get Windows to cough up an "Illegal Operation". I seem to recall that you can also get it with improper context for a given op-code (which varies by architecture, protected ranges and all) and so on. But I'm several years removed from that lower level programming now and memory could be failing me... Anyway, that's what I was trying to wrap up in a relatively concise non-techy description.

wierdscience
09-05-2007, 02:07 AM
"
OTOH, Vista is bloated and slow because WE collectively asked for all the cr-p that is included in it.

Amen to the bloated part,but I never asked for all the usless crap it has on it's back.

When I first got the Vista system I thought it looked like it was geared more towards women.Turns out I think I'm right.The women I know who spend too much time on the internet are full bore picture taking,e-mail sending artsy fartsy freaks.I send text only e-mails,I get back borders with ruffled edges,pictures,flashing animations you name it and these aren't even whores.They all just love Vista even as I curse it under my breath.

Looking at disc space I realised that if I canned all the clip art photos and media files it came with I could free up nearly 1Gig of disc space which I did and it did.The odd thing is the file sizes on the music.The MS installed versions are a good 30% larger than what you will find on the net for the same runtime and rez.Maybe those files are sending back info?

I don't know who at MS likes Beck,but they suck a--,sorry they just do.I deleted all of the music files it came with(wuss rock,crap rock,alternative crap rock etc)

If I want a picture of a bannana leaf for a background I am pefectly capable of finding my own so the clipart photos went too.Gee,my pictures load soo much faster now.

Here in I think we have the key,keep deleting things we don't need or want,same thing I did way back with Win ME,the more things change the more they stay the same.

Evan
09-05-2007, 08:47 AM
Heh. Got BadDog on a rant. :D

Yep, I'm familiar with the meaning of all the various messages, at least when they actually have something to say.


This is probably way more information than you want, but a Windows "Illegal Operation" is Microsoft's translation of the x86 processor throwing an Undefined Opcode (UD#) or Invalid Page Fault exception. I.e., it's part of the standard x86 architecture.
First encountered by myself, without benefit of explanatory messages, when an original stepping 6502 tries to execute a FF op code. Otherwise known as an HCF instruction as in "Halt and Catch Fire". Puts the CPU in a tight loop, hardware reset required.

AFAIAC, the issues with Vista aren't the hardware requirements. Ram is almost free these days and fast CPUs are cheap. All the hardware driver and program compatibility issues are the price that must be paid when you try to build a new OS from the ground up.

The real problem with Vista, aside from the usual MS bloatfest of needless eye candy "features", is that it is really a software emulator of a total cluster f*** of previous operating systems including 9X and NT. This of course is an attempt to avoid totally pissing off the user base by doing the real "right thing" which is to completely abandon the old OS incarnations and write a new "clean sheet" system with no reference to the old. If you need to emulate older operating systems then do so at the application layer and make it easy for that to happen but don't build it into the OS.

By trying (and not always succeeding) to build a "new" OS with backward compatibility MS has once again hamstrung themselves and the user base. This problem has followed MS every step of the way and is responsible for most of the problems at every turn when a "new" version of Windows has been released.

A good example is how XP tries to pretend to be Win 9X. Windows XP, by the way for those not aware, is really Windows NT 5.1

Here is a properties sheet that most users have never seen. It tries to make XP more closely resemble older systems, right back to Win 95! Lots of luck.

http://vts.bc.ca/pics2/compatprop.jpg

TECHSHOP
09-08-2007, 02:17 AM
Being somewhat "challenged" in my computer knowledge, I read everything posted about computers here and understand very little.

My question is that this box I own has been telling me that something is "wrong" with the DLL portion when I restart. I haven't noticed any "problems" while using the computer, but I don't "task" this machine's limits (unlike my 386 "shop" computer).

So what is DLL (dynamic link library, IIRC) and why should I be concerned about it?

I know, ask my children...

nheng
09-08-2007, 01:56 PM
DLLs are basically functions that have been created in a format that allows an application to find its pieces as needed. They are registered when Windows boots. If you have one missing, something will either lack functionality or not run at all. Could be a peripheral (printer, scanner, mouse, camera connection, etc.) or could be a piece of a Windows application.

If you don't miss it after a few weeks, ask your children what they've installed recently :D

Den

BadDog
09-08-2007, 06:26 PM
Close. But I would give the following "plain english" description as definition.

A DLL is a file that contains functionality, executable code, that can be shared between multiple applications (EXEs). You run the EXE, which represents your "application" (process), and the OS takes care of finding all the DLLs that the EXE of interest that the application needs to function. Think of it like this. YOU are the EXE, the driving force that defines what is being done. Your hand calculator is a DLL. It represents functionality that you can interact with, and others might find that functionality useful too. So, like a DLL, it represents discrete functionality that can be shared. Likewise, you shop machines are also like DLLs. They have an "interface" so that YOU, as the "process/application", can interact with them to utilize whatever functionality you need from them, when you need it. And others can use that functionality to achieve there own goals. Just like multiple applications using various DLLs.

Certain DLLs are "registered", like COM DLLs. But regular ol' DLLs are just files on the file system. The EXE (and DLLs can also use other DLLs) has a list of all required DLLs encoded as part of the binary. The system (actually a part called the "Win32 Loader") just knows there are certain places to look for those needed DLL. It looks first in the directory where the exe loaded from. If it does not find the DLL there, it looks through a special list of locations called the PATH (environment variable, just like from DOS days). And it also looks in a few "special" locations I left out for brevity...

The message you saw is somewhat akin to "Crap, now where did that calculator get off too, it should have been right here! Now I can't calculate the sine of the angle, so can't setup my sine bar, so can't do the job I was trying to perform!" :D

Likely causes:

1) The file no longer exists. Either deleted or renamed.
2) The path to it was changed. Perhaps it was moved, or maybe a folder was renamed.
3) Something has changed the PATH so that the Loader no longer looks in the right place.

TECHSHOP
09-09-2007, 06:57 AM
Not really sure what I got, "error loading .dll initialazation routine failed", but I think it is an orphan. Since I won't be back to the computer for a few days, I'll leave it alone for now, just in case it is important to someone else using this machine. When I get back I'll try to delete the thing, and see what happens...

Thanks to all, if I don't make it back online (wouldn't be the first machine I broke too far to repair).

CCWKen
09-10-2007, 01:12 AM
Tech - It sounds like it's already deleted or moved. Something in your startup is asking for the dll. The message should have been specific on which dll so do a system search and see if it somewhere or was deleted. Do a Google on the dll name and see what's calling it.

DENedbalek
09-10-2007, 07:55 AM
I've had good luck finding solutions to my XP problems here:
http://www.microsoft.com/windowsxp/expertzone/newsgroups/reader.mspx?dg=microsoft.public.windowsxp.help_and _support

Dwayne