Log in

View Full Version : Are Developers Lazy, or is Windows 7 Broken?


Jason Dunn
01-26-2011, 07:00 PM
<p><img src="http://images.thoughtsmedia.com/resizer/thumbs/size/600/dht/auto/1295907216.usr1.jpg" style="border: 1px solid #d2d2bb;" /></p><p>The above screen shot is what I saw after upgrading <a href="http://www.evernote.com" target="_blank">Evernote</a> on Windows 7 yesterday. The white icon used to be my Evernote icon, but after the upgrade the icon becomes broken. When clicked on, this error pops up:</p><p><img src="http://images.thoughtsmedia.com//dht/auto/1295907227.usr1.png" style="border: 0;" /></p><p>I can click Yes in response to that error, or if I right-click on the icon and select to Unpin the icon, it will be removed. Then I click and drag the application shortcut on the desktop back onto my taskbar. The question is, why should I have to do that every time I do a software upgrade? I see this frequently with TweetDeck, iTunes, and basically every other app I can think of that updates frequently. It only takes about 10 seconds to fix every time it happens, but I find myself asking the question "Why should I have to fix this?".</p><p>Not being a developer, I have no idea why this happens: is there something broken in the Windows 7 software upgrade system that doesn't allow you to update the shortcut already in place to work with your software? Or, better yet, why is it breaking in the first place? I seriously doubt that the .exe file the shortcut links to is changing.&nbsp;</p><p>Does anyone know what's going on here?</p>

ptyork
01-26-2011, 07:34 PM
In this case, it is the developers, but only tangentially. Tangentially, it is likely also you. :)

Evernote doesn't "upgrade." They uninstall a prior version and reinstall a new version. The uninstall will remove the desktop shortcut that it created and replace it with a new one. No big deal.

BUT, if you dragged the shortcut onto the taskbar, you created a link to the shortcut, NOT a direct link to the program. SO, when the shortcut was removed, the link was broken. Furthermore, Windows used to create shortcuts as physical ".lnk" files in a folder called Desktop. ".lnk" files still work. But they also support new methods for creating shortcuts that are more directly linked to the exe files they point to (complicated, but better in general). The downside is that if you create a taskbar link to the new kind of shortcut, if the shortcut itself is removed, the taskbar link is broken EVEN IF a new shortcut with the same name is created. Which is why the link on the taskbar is still broken even though you have a new Evernote shortcut on the desktop.

Anyway, long story short, Evernote is the prime culprit for being too lazy to code a true upgrade path into their installer. There's no good fix. The "right" way to create a taskbar shortcut is to run the program first and then to right click and "pin" it from the taskbar. Dragging a shortcut to the taskbar is now "incorrect," since you're pinning a shortcut, not the actual program. However, even then, the pinned link is removed entirely during the Evernote uninstall. That's usually a desirable thing, but you have to re-pin it if you reinstall it. No way to make it stick around through upgrades if the developer insists on doing the uninstall first.

ptyork
01-28-2011, 03:15 AM
Ha ha, I have two PC's and on one I got exactly the same behavior as you did. I must have done it "wrong", too. Either that or my grand explanation is worth poop. :)

Jason Dunn
01-28-2011, 03:33 AM
BUT, if you dragged the shortcut onto the taskbar, you created a link to the shortcut, NOT a direct link to the program. SO, when the shortcut was removed, the link was broken. Furthermore, Windows used to create shortcuts as physical ".lnk" files in a folder called Desktop. ".lnk" files still work. But they also support new methods for creating shortcuts that are more directly linked to the exe files they point to (complicated, but better in general). The downside is that if you create a taskbar link to the new kind of shortcut, if the shortcut itself is removed, the taskbar link is broken EVEN IF a new shortcut with the same name is created. Which is why the link on the taskbar is still broken even though you have a new Evernote shortcut on the desktop.

Your explanation made my head hurt. :confused: What's the "right" way to create a task bar shortcut then so this doesn't happen? I don't understand how the taskbar link would be a link to the desktop shortcut; I delete the desktop shortcuts, so wouldn't the taskbar link break right away if the association you're suggesting was accurate?

ptyork
01-28-2011, 09:33 PM
Your explanation made my head hurt. :confused: What's the "right" way to create a task bar shortcut then so this doesn't happen? I don't understand how the taskbar link would be a link to the desktop shortcut; I delete the desktop shortcuts, so wouldn't the taskbar link break right away if the association you're suggesting was accurate?

Yeah, now I'm not 100% sure that 100% of that explanation was 100% correct. ;)

BUT, I do know there's a distinction between dragging a desktop (or start menu) shortcut to the task bar versus actually right clicking on a running task and "pinning it." Try this: unpin your current Evernote button from the taskbar, drag the Evernote icon from your desktop to the task bar, and then start Evernote from that new taskbar button. You should find that ANOTHER Evernote button appears beside the original and that the new one stays "active" while the old one becomes "inactive" again. In other words, the "shortcut" is not running, the program is. Then try right clicking on both of the taskbar buttons and look at the difference. One will have two options and the other will have a bunch of "jump list" items (New Note, Find Note, etc.).

SOOO, the way to get the icon with the quick jump list is not to drag the shortcut to the taskbar, but rather to right click on the running task button in the taskbar and "Pin" it. This is the "right" way.

Now, the way Evernote behaves is not universal. Sometimes when you drag a desktop shortcut to the taskbar, all works as you'd expect. I'm going to postulate that it has something to do with the way that Windows 7 handles adding quick pick items. I could probably test that, but I'm not sure it's worth the pain. It's a bug and Microsoft's problem. :)

Lee Yuan Sheng
01-29-2011, 05:48 AM
Mah head.

It ASPLODEDS.

Jason Dunn
01-30-2011, 02:43 AM
BUT, I do know there's a distinction between dragging a desktop (or start menu) shortcut to the task bar versus actually right clicking on a running task and "pinning it." Try this: unpin your current Evernote button from the taskbar, drag the Evernote icon from your desktop to the task bar, and then start Evernote from that new taskbar button. You should find that ANOTHER Evernote button appears beside the original and that the new one stays "active" while the old one becomes "inactive" again.

Right, I see that. Thing is, I think that behaviour's wrong - I don't see how it's part of Microsoft's model to ever have two icons for a program in taskbar. That's just ugly and redundant. I think, ultimately, Evernote is a bad example to use here because they uninstall the app before they install the new version. I'll keep my eye on how iTunes works from now on when I do an upgrade and see if I can find a pattern.