ID:91595
 
Not a bug
BYOND Version:462
Operating System:Windows Vista Home Premium 64-bit
Web Browser:Internet Explorer 8.0
Status: Not a bug

This is not a bug. It may be an incorrect use of syntax or a limitation in the software. For further discussion on the matter, please consult the BYOND Developer forums.
Descriptive Problem Summary:In windows explorer, that one icon doesn't display for .dmi files, but it shows it for every other type, I think there used to be one showing, maybe even after it broke it continued for those who already had it showing because it didn't change it, it just failed to continue setting it, for an unknown reason.

Numbered Steps to Reproduce Problem:Install BYOND freshly, or maybe just uninstall it might de-register the associated icon then just re-install it.

Code Snippet (if applicable) to Reproduce Problem:


Expected Results:Icon to show for .dmi's, but none appears.

Actual Results:No icon is shown for .dmi's.

Does the problem occur:
Every time? Or how often?Every time, even reintstalled, maybe an old version of BYOND installing would help, but was untested.
In other games?All .dmi files, nothing to do with game.
In other user accounts?Yes
On other computers?Yes, installed on windows 7 laptop, same issue, windows xp comp, and other windows vista comps, and all the same issue.

When does the problem NOT occur?Don't know, maybe when u already had it before, or upgrade.

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
Untested, but I figure it works in a few versions ago I would think, as I restore pretty often.

Workarounds:Maybe download old version, or register the icon using the registry manually.

OK, I found a few more work-arounds, and the possible issue.

1.Reboot your computer, this should fix it.

2.Without rebooting, in vista, go to Start>>Default Programs, click a program and click set defaults, then simply click save, you don't even have to change anything.

However, IE asked me to make it the default browser after doing that, for some reason, but, it worked none the less, I advise rebooting instead unless a program does it, the side effect of asking you to make IE default doesn't happen when you install BYOND, so something about BYOND is better about making it refresh correctly.
If rebooting your computer fixes the issue then the problem is a well-known issue in Windows: Changing program associations or icons does not necessarily show up in Explorer until Explorer is restarted. Since that works for you, there is no bug.
It's not a windows bug, an API is called in windows to reset icons, or else none of them would show up till reboot, I am betting it is more like an issue of when that API gets called, which might be before it sets the icon picture.

Or maybe it's a timing issue where your calling the API to soon after trying to set the picture for .dmi files.

Or maybe it's the program your using to make byond with has a timing issue of it's own, which I have seen where it likes to call a code, then pass on without even waiting for the code to finish executing.

Only if it's the first one is it byond's fault if the API call is before where you set the .dmi file icon.

It might be able to be worked around however in the 2nd or 3rd scenarios where it's a timing issue or the program not waiting for the code to execute before moving on.

with like a My.Application.DoEvents() or the equivalent in the language ur using, which I figure is C++, but I don't know the equivalent for C++, that code is VB, and if you don't know the equivalent either, there are plenty of online translaters.
I didn't say it's a Windows bug, I said it's a Windows issue. This is known Windows behavior.
Either way Lummox, being a Windows issue doesn't matter when you have to call an API to make any of the icons update, there could be a bug where the API is called too soon, or an easy way to work-around the issue.