Hacker News new | past | comments | ask | show | jobs | submit login
Putting my VB6 Windows Apps in the Windows 10 Store (hanselman.com)
142 points by LyalinDotCom on Oct 2, 2016 | hide | past | favorite | 88 comments



I set out to try the Desktop App Converter with some of my own apps the other day, on a laptop that had just been updated with the Windows 10 Anniversary Update. Trouble was, the laptop had Windows 10 Home Edition on it and the Desktop App Converter won't run on that. Or so I deduced after chasing an obscure error message awhile.

This seems to be because the converter needs virtualisation support, which isn't included in the Home edition. But it wasn't clear to me whether a £100 upgrade to Win10 Pro would be enough to permit me to run it, or whether I'd need to have Win10 Enterprise which doesn't seem (?) to be a thing a person can just go out and buy.

(Something very 90s about all this worrying about the base OS licence level stuff.)


I agree that this is completely nuts.

FWIW i found a much cheaper pro license (around €40, iirc) by using some product comparison sites. Basically, even though it's 2016 you can actually buy software from webshops the way you'd order hardware or shoes, and many of these shops also sell Windows 10 Pro licenses. Somehow, they're often much cheaper than what MS sells in their own store. Completely nuts if you ask me, but ok. All you get after you pay is a text file with a license code, but that's also all you need.

I still think it's insane that MS, who so badly want developers to come back to their platform, force you to be on Pro for a lot of useful stuff (including running the WinPhone emulator (!)). This disqualifies nearly all nice laptops you can buy at a good price point, unless you subsequently go through the trouble of manually finding, buying, and entering a Pro license like I did.

If anyone from MSFT is reading this: fix this! I can't walk into a store, buy some nice cheap Asus convertible, and just start coding Windows Mobile apps, and that's stupid. Your OS is getting better again, WSL is promising, we all love how badass you've been with cross platform .NET and VS Code and getting Node.JS to work great on Windows, but you're really scaring people away here.


"Your OS is getting better again"

Literally the first time I've heard someone say that about the recent state of Windows outside of Microsoft PR.


I assume you're surrounded by people who don't use Windows? Not meant as a snark - most people I know use Windows and they all think 10 is the best one yet, except a few who're (rightfully) angry about the telemetry stuff.

Personally, for me it's just Windows 7 with better looks and great touch screen support. I know no better OS with decent touch screen support. I really like using the touch screen. You Macbook people don't know what you're missing (but I guess that OLED touch-bar thing is going to get you halfway there, pretty cool).

My laptop is basically an iPad Pro but with a much more powerful OS (for stuff like development, especially).


Maybe general consumer opinion is that it doesn't suck as much as Windows 8. I was only considering what I've heard for people in IT. I make a living working on the MS stack and I agree it's a pleasant platform for development, but only for the MS stack. It's inferior for development of just about everything else. I now run Windows in a VM, I don't want it anywhere near my personal things. It's not specifically the telemetry that's so appalling, I expect typical software companies to include it, and I can even forgive it being on by default. It's the fact that users are _not allowed_ to, along with a huge selection of other "features", disable or remove it. Windows is becoming more like iOS, not less, it will eventually leave you just as powerless if it hasn't already.


While things have been a bit buggy since the anniversary update, Microsoft have been improving Windows a lot in the last 4-5 years.

Sure, there have been some "1 step forward 2 steps back" moments, but in total the general reaction from actual users have been quite positive.


I'd worry about those licenses being real. Are the places you found them reputable? I'd be willing to be they are not.


There's plenty of ways to find out if a webshop is reputable. This one in particular mostly sold games and had tons of good reviews on a Dutch gamer site.


​It's more than reputation, though. I bought Office 95 for -- forgive me if I'm off on actual numbers here; it's been a long time -- $200, when the going price was $400. I wanted to be legit, and this was supposedly the "OEM" price. The jewel case had the inserts with the holograms and the CD's had the etching, and everything looked genuine. The key worked just fine. They even shipped it with a CD audio cable, as was the custom to "legitimize" "OEM" sales. Everything about the purchase seemed legal and legitimate.

Right after that, my Fortune 250 bought a Select Agreement, and a sales rep came in to explain it and answer questions. I asked why the best price the company could buy Office 95 for was $400, when I could buy it online for half of that, and she explained that it was illegitimate. She explained that it HAD to be. Microsoft simply did not sell that software any cheaper than an A-level Select Agreement (or whatever it was).

I didn't have someone's copy of a CD with a hand-scrawled black marker label. I had an actually-stolen physical product. I realized I couldn't trust anyone online, really. Selling it for half price, with the cable, instead of, say $20, was the key to making it look legitimate.

It was the last of a lot of straws. After this, I made Linux my desktop OS, and ran it for 19 years, till I switched to Mac a few years ago.


Where I work, the PC are bought with Windows preinstalled, the disks are wiped and Windows enterprise is installed. Maybe there is a market to sell and buy the unused original license ??


The "unused original license" is an OEM license. An OEM license lives and dies with the hardware it comes with. Quite often it is even tied to the hardware, so you cannot even install it on PCs of a different brand and/or model.


NO, it does not. It is PERFECTLY legal to sell your oem software in EU, ask Oracle.

http://curia.europa.eu/juris/document/document.jsf?text=&doc...


Well first of all we were not talking about Oracle but about Windows licenses.

Second I did not touch the legal aspect, just stated what the EULA contains and that it might be enforced by technical means. The law has its differences all over the world, so let's not go down that rabbit hole.


What is EULA if not legal aspect? And according to highest EU court EULA is toiled paper and does not nullify your rights. Not to mention specifying its about windows license like that would change anything?

Here is another (regional) EU court result concerning exactly OEM Microsoft licenses, Microsoft didnt appeal further.

https://www.usedsoft.com/assets/Law/usedSoft-PM-Urteil-LG-Ha...


As of windows 7, the license is quite literally tied to the hardware, as it's in the bios rom.

http://www.guytechie.com/articles/2010/2/25/how-slp-and-slic...

That's not to say there aren't ways around that, but it might be on a different level than just selling an OEM license.


> As of windows 7, the license is quite literally tied to the hardware.

Dates back to at least XP with Windows. The string that was checked in XP was very simple and later versions were digital certificates. Windows 10 OEM (started with 8 iirc) use per machine fingerprinting and have individual keys.

https://en.wikipedia.org/wiki/System_Locked_Pre-installation

System builder licences are fairly cheap but the EULA for them state that they are for putting on a new machine and selling that hardware on, if your building a machine for yourself you need a standard licence.

As for the cheap licences found on sites such as Kinguin. Speculation is a number of keys on these sites come from stolen CC's. Buy keys from legit sites with stolen Cc, sell the codes on Kinguin/G2A. Legit store is hit with charge back once CC holder realise they had their card has been used. It's been a fairly regular complaint in the indie games industry http://tinybuild.com/g2a-sold-450k-worth-of-our-game-keys


"Software Assurance" requires that OEM license.


Good question on which edition supports virtualization, so i looked it up. There is a downloadable table on the compare editions page, its located here in PDF:

http://wincom.blob.core.windows.net/documents/Win10CompareTa...

On there it indicates that Hyper-V comes with Pro or above. So basically only Windows 10 Home doesn't seem to have it.


That same confusing document also lists 'Microsoft Application Virtualization (App-V)' as a feature that doesn't exist on Pro. Is having Hyper-V sufficient? What actually is the 'App-V' feature listed? (It comes in a 'management' section, so it is unclear if it is about managing apps or just letting them run in the first place).

Still very confusing...


Hyper-V is sufficient. (Hyper-V is the virtualization hypervisor that runs virtual machines; App-V is an Enterprise-targeted application container management system/tool.)


I wish MS was more clear that 90% of devs will be best served by the pro edition. HyperV is basically indispensable to a dev of most any kind given enough time.


> HyperV is basically indispensable to a dev of most any kind given enough time.

Or any of the free alternatives that do the job just as well (or better) but don't require a special license version to run.

VirtualBox and KVM/VirtManager come to mind, both work for free, VirtualBox will run on Windows computers, and both work on Linux machines. There are many others too.


> VirtualBox and KVM/VirtManager come to mind, both work for free, VirtualBox will run on Windows computers, and both work on Linux machines. There are many others too.

I have both and have used both, and while VirtualBox is a servicable product and is free, it does not "work as well" in my experience as HyperV.

Notably, even before Docker For Windows Beta, a hand-built Docker HyperV instance was notably faster than the VBoxHeadless variant.

I'm not sure why paying money for a good virtualization package is bad. Certainly on the OSX side VMware is a truckload more stable and light years better at supporting any sort of task that has a display requirement.


Yes, but that applies only to very limited headless machines. As soon as you want to use graphics or peripherals hyper-v will not suffice.


True, but headless machines are the subject of discussion.


Enable the RemoteFX GPU support in the VM then.


Occasionally a Windows update will come down the pipe that kills Virtualbox stone dead, and it's not always fixed (on the VBox side) ASAP. Just a cryptic error in the event viewer, that's all you get.


This is purely anecdotal, but I've used Virtualbox for years (on host machines of windows xp -> windows 10 and every version in between, plus several linux distros) and never once ran into this issue.


I ran into this problem last week on Win10 when I had to fire up a linux VM to do some troubleshooting for work. Found the answer in the VBox forums, and saw the same thing in the forums a couple of times in previous years.

I was lucky in that there were new builds to download (I don't use it often), but the answer for each of the forum threads was "wait".

On a tangent, this win10 box is my gaming box, and I haven't changed any of the settings regarding updates - it's just stock win10 stuff. Which is amusing when win10 gives you the "we're rebooting, you can either do it now or in 15 minutes" bit (different to the 4-hour delay option). I've come back from dinner to find the machine freshly rebooted. :)


HyperV and VirtualBox (or VMWare) cannot co-exist on the same machine.

So basically, if you want to do windows development you have to give up the alternatives


> So basically, if you want to do windows development you have to give up the alternatives

What? You can run Windows guests on Virtualbox.


VirtualBox still runs fine on a Windows machine with HyperV active. (I have a mixture of VMs in both and while I try not to run them side-by-side I don't have problems with either running.)


Maybe this has been fixed with AU, but previously you had to practially dual-boot windows to use both: http://www.hanselman.com/blog/SwitchEasilyBetweenVirtualBoxA...


I'm currently running Windows 8.1. I've got an ancient XP VM in VirtualBox I need to run sometimes and also use the Hyper-V-based VS Android and Windows mobile emulators and don't have obvious issues running one or the other. I haven't done anything other than installs to get things running.


The name gives it away. The pro edition is for professionals.


It absolutely is not. It is for 'consumers' that do not have the clout to refuse the Androidization of their PC.

Take a spin through group policy and you'll notice that many of the hated features of Win 10 can not be modified on pro and home.


That they do that to the home version I can understand. But they treat the pro version as a consumer version, ie with telemetry, adware & co. It has become only a "pro" version in name.

I am an individual, I don't have access to Windows Enterprise. It is very weird that Microsoft won't even take my money. If they make pro a spyware/adware filled locked down OS, at least they should make enterprise available, for a small premium, to the customers who wish to opt out.


This correlates with their long term goals of making the OS a SaaS, with paid services (like making HyperV available) and pay-or-get-ads for the home and pro versions. Having access to Enterprise, people would simply upgrade to that to avoid subscription fees.

Obviously, I cannot refer to my sources, else people would lose their jobs and more.


You're suggesting you have inside information that this is, in fact, their roadmap. It wouldn't surprise me. And it makes me all the more willing to pay a premium for hardware which runs macOS, if it would make Apple NOT go down the same roads.


They will do away with the Windows 10 name in two-three year's time and just call it "Windows", it being their final operating system product. All iterations and patching can be done via their update services.

At the same time, the OS will be made free-for-download, not just upgrade, since they have already made the bulk profits from sales. Focus will shift to spreading their base product, the OS, to everyone and live off of services they provide within their ecosystem. All products, enterprise and otherwise, will move towards a SaaS structure, where they will attempt to push pre-made packages onto customers big and small alike. Office 365 was the pilot.


You mean a subscription based model? What will happen when people stop paying, they brick the device?

If their idea that what customers are really after is a OS filled with ads, they are running into a wall with both feet on the accelerator.


I use the tools daily and the number of "invasive ads" is commensurate with what I saw in OSX.

And I'd use Linux for my desktop OS if it was at all suited to running on modern laptop hardware with:

1. Good battery life. Within 5% of what the targetted OS can deliver.

2. Good external display support (at least as good as windows, you plug it in and your projector/external monitor/video capture device works).

3. Good support for the common high density displays that laptops bundle now.

4. Without substantial configuration effort and the promise that my computer will NEVER brick its own update mechanism because it can't be bothered to sweep year old kernel images.

And having just tried AGAIN (again again again again x10) to get a Linux laptop working on 2 year old hardware *marketed as designed for linux, it failed.

I don't really care what excuses everyone offers. These are entirely reasonable requests and for most hardware, no desktop Linux will meet them without radically lowering your standards.

So yeah, I have to pay more for a competent experience. Too bad the Linux world refuses to deliver a free one, but I suppose that's because it's lots of effort.


I completely share your frustration with linux on laptops, I ran into similar problems. And the breadth of distributions makes it very hard to find help without being a linux specialist.

Which is also why I don't mind paying for Windows it itself. But I do not want an OS with ads and telemetry.

And it is highly ironic that Microsoft is distributing "signature" hardware that was meant to be free from the adware and spyware that the PC makers were installing by default, only for the windows team to embed this adware and spyware in windows 10 itself.


> But I do not want an OS with ads and telemetry.

I am afraid you and the industry are at an impasse. You have no platform available to you that is both competent and does 0 telemetry.

Given the absurd price pressures on software, I don't know how any of us can ship things at scale with competitive cost without extensive telemetry.

> windows team to embed this adware and spyware in windows 10 itself.

This kind of language is both inflammatory and somewhat inaccurate. Windows 10 and even the Edge browser are _not_ Spyware and drawing a false equivalence here only serves to muddy the discussion.

Basic telemetry on use is not spyware. The Windows Store live tile is NOT adware and can be removed from the start menu if you find it's tiny window onto store promotions (something entirely relevant to a store app) to be offensive.

Yes, there have been a few inappropriate decisions on MS's part (notably offering overt ads over the free lockscreen art program). These are bad, but have been apologized for and rescinded. They do not constitute an OS that is "Adware and Spyware." Thank you.


I am sorry, when I make a clean install of Windows 10, it is full of "get office", "try skype", "install Netflix", "use candy crush soda" etc. How is it different from the "try McAffee" that I get on a non signature PC?

As for the data collection (enabled by default), I am sorry, this is nothing short of spyware. Quoting the EFF: location data, text input, voice input, touch input, webpages you visit, and telemetry data regarding your general usage of your computer, including which programs you run and for how long..

https://www.eff.org/deeplinks/2016/08/windows-10-microsoft-b...

And that's in top of making it more difficult to change the default browser which users have to do manually instead of the browser being able to do it for you. This is really mean.

If Microsoft gets offended by their software being called spyware and adware, then they'd better not do it in the first place.


Why do you keep facetiously saying, "I am sorry."

> As for the data collection (enabled by default), I am sorry, this is nothing short of spyware. Quoting the EFF: location data, text input, voice input, touch input, webpages you visit, and telemetry data regarding your general usage of your computer, including which programs you run and for how long..

This definition is politically motivated to classify nearly every Mobile Application, Webpage, and desktop application and OS besides Linux as "spyware."

"I am sorry" but that's an outrageous definition.

> If Microsoft gets offended by their software being called spyware and adware, then they'd better not do it in the first place.

I am not a Microsoft employee nor do I own stock in the company. I am just tired of any conceivable rhetoric being reached for to try and discredit the fact that Linux has overwhelmingly fallen behind on performance and quality besides competitors in the desktop space. What's more, it's now being threatened in the server space.

Linux's only mass success stories exist because of an impressive amount of enterprise funding which utterly eclipses any open source efforts prior. These themselves are littered with analytics signals which people use to further guide the use of linux, and all "consumer facing" variants of Linux have a store, have small adds, etc.

If that's what it takes to get a competent OS for consumer hardware, then the Linux community is at least partially to blame for failing to provide a credible alternative.

You may continue to excuse such incompetence with flowery and vibrant rhetoric about how what's yours is yours (even though the reality is much more complicated). I got bored with it 10 years ago.


McAfee trials was actually installed by default.


It is not the same thing. A lot of the telemetry is via SQM for example.


> What will happen when people stop paying

They'll utilize Windows Update.


Mostly in response to declining PC sales right?


Want to use more than one monitor over remote desktop? That's not for professionals only for enterprise!


> Windows 10 Home Edition

I don't miss Windows at all.


pro should be enough I think.


I helped work on the converter. That's correct; Pro is sufficient.


Some nits:

  * Signing packages is not necessary for normal Store distribution. Skip this step.
  * Devs must work with Microsoft to get their Centennial apps in the Store right now, it's not a free for all
  * There's a swath of users that can't use Centennial apps right now due to a bug that will bugcheck the box.
General Centennial app take-aways:

  * Package Win32 apps and throw them in the Store
  * You get package update, flighting, analytics and feedback hub integration for free
  * Clean install/uninstall due to virtualized file-system/registry writes


Surely something like the Windows app packaging / sandbox model would be implemented in userland - how the heck could it possibly BSOD a machine? That's just astounding.


Boils down to kernel drivers using RtlQueryRegistryValues and expecting to access a trusted system hive, not the Centennial redirected one. Oops.


Good news about signing. I suppose the store itself somehow signs things? Code signing certificates are prohibitively expensive for small developers at around $500.


You can get them for under $100 a year from some resellers. I got mine from here http://codesigning.ksoftware.net/

$84 a year, and as low as $67 a year if you go multi-year.


You upload an .appx with an associated unique identity (allocated via the Windows Dev Center) and Microsoft manages the signing and such on their end.


And you give 30% cut from revenue. Nice played.


All this is fascinating though. We're talking 18+ years of binary compatibility.

Microsoft sure knows how to keep the cash flowing.


Uuuuhhhh. There are plenty of games that came out even 10 years ago that ostensibly have the "Designed for Windows XP" (even Vista) badges but that which refuse to run on Windows 10. Often it's to do with how they do graphics, which is a shame, because sandboxing like this is a great way to allow graphics to be shimmed.


Games have always suffered the most from back-compat, usually because they were the ones most prone to using hacks to speed things up. Remember how many things stopped working during the XP migration, because they expected the OS to get out of their way, like 9x did?

FWIW, there are some counterexamples. There is a turn-based strategy game (think Master of Magic meets H&MM) called Age of Wonders, that originally shipped in 1999, targeting Win95/98 and WinNT 4.0 - a rare case, that, most games from that era didn't even bother with NT. I still play it regularly, and the amazing part is how it not just works on Win10 machines today, but works amazingly well. For example, it can handle pretty much any random resolution (including tablets in portrait mode and other weird corner cases), and it actually scales its UI up and down accordingly.

The most interesting part is that it does do things that were normal back then but which are no-no now, like putting savegames directly into its install folder, or saving settings under HKEY_LOCAL_MACHINE. But because they did them in a straighforward, non-hackish way, things like Vista's and later registry and FS redirection all work great, and the game doesn't even notice it at all.

I bet it could be easily packaged into the Store, if they wanted to.


> targeting Win95/98 and WinNT 4.0 - a rare case, that, most games from that era didn't even bother with NT. I still play it regularly, and the amazing part is how it not just works on Win10 machines today, but works amazingly well

These two things are not unrelated. Windows from 2k onwards has been based on the NT line (I remember Windows 7 is internally NT 6.1, I imagine 10 is similar).


Also sometimes because it uses SafeDisc or Securom copy protection, which just won't work on Windows 10: https://www.rockpapershotgun.com/2015/08/17/windows-10-safed...


Why can't the studies simply release an official "no-CD" patch to solve this problem? If the really don't have the source code anybody, just ask politely at the scene. ;-)


GoG sometimes does that for retro titles.


gog sometimes ships with official scene no-cd release exe's


If it's 'official', it needs to be tested and supported. Why throw money at a years-expired project for a handful of users who won't pay you?


Because if your game does not work on modern OSs because of the DRM that you used can easily become a marketing disaster.


How many studios or publishers are still in business under the same name? And how many gamers would actually care? Even in the worst days of Ubisoft's "add DRM until it doesn't work for 50% of legitimate users" approach people still bought their games.


There are many older games that still have an avid fanbase (which can imply potential for a shitstorm).


StarCraft is the exception that proves the rule, and Blizzard did actually release an official no-CD patch. Other than that, what games, and what company would they impact? E.g. my friends still play Total Annihilation, but the company that published it went bankrupt years ago; Gas Powered Games might theoretically be affected by their reputation but they probably don't have the rights to release a patch for Total Annihilation even if they wanted to.


"has to do with" usually means "undocumented hacks". Perhaps MS could have done more to discourage or even break these kinds of apps early rather than letting them linger and become popular.


.. and it requires a capability not currently documented by microsoft(!) https://msdn.microsoft.com/en-us/library/windows/apps/br2114... called "runFullTrust"; which is displayed with an explanation that will be as clear as mud for a user: "Capabilities: • runs full trust mode". Elsewhere in the document, it was stated that only registry and one folder are redirected. So do these apps do away with the beneficial parts of sandboxing that the windows store was supposed to be good for?


Yes, hence requiring "full trust".

Right now, apps are manually reviewed by Microsoft to mitigate abuse. How this works in the open-for-all configuration has yet to be seen.

You can see some of the nuances of full trust apps via https://msdn.microsoft.com/en-us/windows/uwp/porting/desktop... .


I wonder if someone will publish a FoxPro app.


Is there a way to confirm app publishers are who they say they are?

Once it's available for everybody, what's stopping people from uploading things they don't own?


Right now, it requires manual approval and paperwork/signatures. It's not clear if this will change, as solving the problem you brought up doesn't seem possible.


It can be some system bound to domain names of software developers/vendors (like Let's Encrypt, but for code signing instead of TLS).


I can't find any documentation on it - does anyone know how auto-updates are handled? Do you just release a new version and hope for the best or is there some sort of mechanism to force people to update?


Updates are submitted to the Windows Store, just as you would with any other Store app. After approval, they can be configured to trickle out and/or force install (when available). More information can be found at https://msdn.microsoft.com/windows/uwp/publish/upload-app-pa...

You can also create a "flight group" consisting of your test team and only push out more broadly when your internal QA passes. Check out https://msdn.microsoft.com/en-us/windows/uwp/publish/package... for details.


I love that VB6 is still alive!


The amount of Redmond's astroturfing is ridiculous. One cannot even install one's appx on one's own machine unless one signs it with a real certificate. Even Sinclair ZX80 could do that. Appx cannot.


You have to toggle your machine to developer mode first, but you absolutely can.


If you could, it would create an attack vector. From a security point, it's the right way to do things.


In related news the very first thing I do when installing W10 for someone is https://github.com/W4RH4WK/Debloat-Windows-10 which among other things uninstalls Windows Store.

Windows Apps are a joke. Have you seen the "new improved" windows explorer app that just landed in insider builds? Its a frickin phone app Microsoft expects you to use on the desktop.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: