Discussion:
My application shows up as "TODO: <File Description>" in Windows Firewall
(too old to reply)
Timur Aydin
2008-02-26 12:06:59 UTC
Permalink
Hi,

I have a simple dialog based MFC application, which locates a hardware
device on the network using UDP broadcast. When this program is run for the
first time, Windows Firewall comes up and offers to unblock this program.
However, the name of the program shows up as "TODO: <File Description>". I
have filled all fields in the version resource.

This problem only happens with the "Release" configuration. When I build the
application with the "Debug" configuration, Windows Firewall displays the
name of my application correctly.

Any insights?

Timur Aydin
Tom Serface
2008-02-26 15:08:03 UTC
Permalink
One thing I start with is doing a global find in your project on that string
and see if you can see where it is... could be that there is a compile
directive that is including one string or the other based on the build
settings.

Tom
Post by Timur Aydin
Hi,
I have a simple dialog based MFC application, which locates a hardware
device on the network using UDP broadcast. When this program is run for
the first time, Windows Firewall comes up and offers to unblock this
program. However, the name of the program shows up as "TODO: <File
Description>". I have filled all fields in the version resource.
This problem only happens with the "Release" configuration. When I build
the application with the "Debug" configuration, Windows Firewall displays
the name of my application correctly.
Any insights?
Timur Aydin
Timur Aydin
2008-02-26 15:44:26 UTC
Permalink
OK, I found the problem.

The name of the application is cached in the registry !!!

When I first used the problem, the version resource was apparently not
updated. When I saw the incorrect name in Windows Firewall, I corrected the
version resource, but windows keeps using the cached value :(

The problem only happened with the release build, because when I ran the
debug build, I had already corrected the version resource, so the correct
name was cached by windows.

This is really very strange. Why are the names cached for such a simple
operation as reading the version resource out of the executable?

To resolve the issues, I searched for TODO: <file description> in the
registry and deleted all entries that I found. After this, the correct names
started to show up in Windows Firewall.

Timur
Post by Tom Serface
One thing I start with is doing a global find in your project on that
string and see if you can see where it is... could be that there is a
compile directive that is including one string or the other based on the
build settings.
Tom
Post by Timur Aydin
Hi,
I have a simple dialog based MFC application, which locates a hardware
device on the network using UDP broadcast. When this program is run for
the first time, Windows Firewall comes up and offers to unblock this
program. However, the name of the program shows up as "TODO: <File
Description>". I have filled all fields in the version resource.
This problem only happens with the "Release" configuration. When I build
the application with the "Debug" configuration, Windows Firewall displays
the name of my application correctly.
Any insights?
Timur Aydin
Tom Serface
2008-02-26 15:52:25 UTC
Permalink
Thanks for posting the resolution for this one. It's always great to hear
about the solution.

Tom
Post by Timur Aydin
OK, I found the problem.
The name of the application is cached in the registry !!!
When I first used the problem, the version resource was apparently not
updated. When I saw the incorrect name in Windows Firewall, I corrected
the version resource, but windows keeps using the cached value :(
The problem only happened with the release build, because when I ran the
debug build, I had already corrected the version resource, so the correct
name was cached by windows.
This is really very strange. Why are the names cached for such a simple
operation as reading the version resource out of the executable?
To resolve the issues, I searched for TODO: <file description> in the
registry and deleted all entries that I found. After this, the correct
names started to show up in Windows Firewall.
Timur
Post by Tom Serface
One thing I start with is doing a global find in your project on that
string and see if you can see where it is... could be that there is a
compile directive that is including one string or the other based on the
build settings.
Tom
Post by Timur Aydin
Hi,
I have a simple dialog based MFC application, which locates a hardware
device on the network using UDP broadcast. When this program is run for
the first time, Windows Firewall comes up and offers to unblock this
program. However, the name of the program shows up as "TODO: <File
Description>". I have filled all fields in the version resource.
This problem only happens with the "Release" configuration. When I build
the application with the "Debug" configuration, Windows Firewall
displays the name of my application correctly.
Any insights?
Timur Aydin
David Ching
2008-02-26 16:00:54 UTC
Permalink
Post by Timur Aydin
OK, I found the problem.
The name of the application is cached in the registry !!!
When I first used the problem, the version resource was apparently not
updated. When I saw the incorrect name in Windows Firewall, I corrected
the version resource, but windows keeps using the cached value :(
The problem only happened with the release build, because when I ran the
debug build, I had already corrected the version resource, so the correct
name was cached by windows.
This is really very strange. Why are the names cached for such a simple
operation as reading the version resource out of the executable?
To resolve the issues, I searched for TODO: <file description> in the
registry and deleted all entries that I found. After this, the correct
names started to show up in Windows Firewall.
What registry key contained this TODO string? It sounds like Windows
Firewall data. I don't think core Windows caches version info like this.
If Windows Explorer properties shows your version info correctly, it
definitely is a Windows Firewall thing.

-- David
Timur Aydin
2008-02-27 14:18:12 UTC
Permalink
Hi,

Here is the name of that key:

HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\Shell\MuiCache

When I used windows explorer to look at the "details" tab, the version
information was definitely showing up correctly. Only windows firewall was
displaying the incorrect data, because it is apparently looking that name up
from the cache instead of the actual executable.

Timur Aydin
Post by David Ching
Post by Timur Aydin
OK, I found the problem.
The name of the application is cached in the registry !!!
When I first used the problem, the version resource was apparently not
updated. When I saw the incorrect name in Windows Firewall, I corrected
the version resource, but windows keeps using the cached value :(
The problem only happened with the release build, because when I ran the
debug build, I had already corrected the version resource, so the correct
name was cached by windows.
This is really very strange. Why are the names cached for such a simple
operation as reading the version resource out of the executable?
To resolve the issues, I searched for TODO: <file description> in the
registry and deleted all entries that I found. After this, the correct
names started to show up in Windows Firewall.
What registry key contained this TODO string? It sounds like Windows
Firewall data. I don't think core Windows caches version info like this.
If Windows Explorer properties shows your version info correctly, it
definitely is a Windows Firewall thing.
-- David
i***@gmail.com
2015-04-23 22:30:47 UTC
Permalink
Post by Timur Aydin
Hi,
HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\Shell\MuiCache
When I used windows explorer to look at the "details" tab, the version
information was definitely showing up correctly. Only windows firewall was
displaying the incorrect data, because it is apparently looking that name up
from the cache instead of the actual executable.
Timur Aydin
Post by David Ching
Post by Timur Aydin
OK, I found the problem.
The name of the application is cached in the registry !!!
When I first used the problem, the version resource was apparently not
updated. When I saw the incorrect name in Windows Firewall, I corrected
the version resource, but windows keeps using the cached value :(
The problem only happened with the release build, because when I ran the
debug build, I had already corrected the version resource, so the correct
name was cached by windows.
This is really very strange. Why are the names cached for such a simple
operation as reading the version resource out of the executable?
To resolve the issues, I searched for TODO: <file description> in the
registry and deleted all entries that I found. After this, the correct
names started to show up in Windows Firewall.
What registry key contained this TODO string? It sounds like Windows
Firewall data. I don't think core Windows caches version info like this.
If Windows Explorer properties shows your version info correctly, it
definitely is a Windows Firewall thing.
-- David
I have the same issue, but not with windows firewall. When I open my application, and right-click on its icon on the task bar, it shows "TODO: <File description>. After I delete that key in registry, it shows the correct name.
Joseph M. Newcomer
2008-03-02 02:30:28 UTC
Permalink
Fix your VERSIONINFO resource.
joe
Post by Timur Aydin
Hi,
I have a simple dialog based MFC application, which locates a hardware
device on the network using UDP broadcast. When this program is run for the
first time, Windows Firewall comes up and offers to unblock this program.
However, the name of the program shows up as "TODO: <File Description>". I
have filled all fields in the version resource.
This problem only happens with the "Release" configuration. When I build the
application with the "Debug" configuration, Windows Firewall displays the
name of my application correctly.
Any insights?
Timur Aydin
Joseph M. Newcomer [MVP]
email: ***@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
m***@gmail.com
2013-06-20 14:59:22 UTC
Permalink
Setting the VS_VERSION_INFO does not fix this problem for Debug builds in Visual Studio 7. It does for Release builds.
Post by Joseph M. Newcomer
Fix your VERSIONINFO resource.
joe
Post by Timur Aydin
Hi,
I have a simple dialog based MFC application, which locates a hardware
device on the network using UDP broadcast. When this program is run for the
first time, Windows Firewall comes up and offers to unblock this program.
However, the name of the program shows up as "TODO: <File Description>". I
have filled all fields in the version resource.
This problem only happens with the "Release" configuration. When I build the
application with the "Debug" configuration, Windows Firewall displays the
name of my application correctly.
Any insights?
Timur Aydin
Joseph M. Newcomer [MVP]
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
Loading...