Windows 10: App language differs from Windows language

When doing a clean install of Windows 10 all the apps in Windows was using Swedish. Apparently Microsoft thinks that if you use a Swedish keyboard you also want the apps to run in Swedish, even if you selected that you wanted to run Windows in English.

The primary language in Windows 10 seems to be selected from which keyboard you are using.


To change your primary language, follow these steps:

  1. Swipe in from the right edge of the screen, tap Settings, and then tap Change PC settings.
    (If you’re using a mouse, point to the lower-right corner of the screen, move the mouse pointer up, click Settings, and then click Change PC settings.)

  2. Tap or click Time and language, and then tap or click Region and language.

  3. Tap or click the language that you want to use, and then tap or click Set as primary. The language you choose will appear at the top of the Languages list.

Failed to Install the new Preview Build. Error 0x80246013

When trying to update Windows 10 Technical Preview build 9841 to 10041, I got the error: Failed to Install the new Preview Build. Error code 0x80246013.

This was because that the Windows Update had been running updates in the background while the new preview build was downloading.

After rebooting the system the preview update installed without any problems. Except that the update had to be downloaded yet another time.

Windows 10 activation error 0x8007007B

Windows 10 preview started to nag me because it wasn’t activated. Trying to activate it only resulted in an error. When clicking error details it showed error code 0x8007007b.

The way to solve this was to click change product key and enter this key:


I had to enter it twice before the change worked. After this the activation worked. Almost, I didn’t get an success from the activation, I only got a white blank window. But after reopening the windows the activation was ok.

I was running preview build 9926.
And it looks like it is the same problem, and the same solution, in build 10041.


Not authorized to login to share in Windows 10 build 9926

After automatic update of Windows 10 build 9926 of Windows 10 I could no longer acces the new Synology Diskstation.

“\\share is not accessible. You might not have permission to use this network resource. Contact the administrator of this server to find out if you have access permissions.

The account is not authorized to login from this station”

After lots of searching on the net it turned out that Microsoft has increased the security in this new build. And it seems that there is only a registry hack to let build 9926 connect like any other versions of Windows.

You have to add:

AllowInsecureGuestAuth (DWORD 32-bit) and set it to 1




That would let me connect as the guest account on my Synology Diskstation again.

ASP.NET MVC4 site gives Error 403.14 on IIS 8.5

Publishig a new project created with Visual Studio 2013 Update 3 and ASP.NET MVC4 on IIS 8.5 and Windows Server 2012 R2 only resulted in Error 403.14.

Since it was the first MVC project on that server I thought is was a configuration issue in IIS. After testing almost all suggestions found on Internet (most of the referring to IIS 7.5), I found someone with that same problem and had a solution.

The problem was the setting “Precompile during publish” when publishing. I publish to a local folder before sending it to the server and I’d selected that because I thought it would make the site faster. But this completely broke the site!

Disabling “Precompile during publish”, republishing it (locally) and sending it to the server and now it worked as expected!

.NET Collections: Comparing Performance and Memory Usage

I develop several web sites with dictionary search engines where you can search for words in a lots of different ways. Because of the flexible searches with regular expressions, normal indexes in databases engines are almost useless.

The current solution is to load all objects into memory. The search data is fairly static and  does not grow much, so it works quite well. The current solution finds the results most of the time in a few hundreds milliseconds (0.001 to 0.5 seconds).

Recently I have been looking at the graph database Neo4j, but because of the kind of searches that are done on the pages the results on test data was incredibly poor. Most queries took 2 to 9 seconds and that was on test data that was only a small part of the real data and only 5% of the relations was generated. I might give it another try with real data when Neo4j 2.0 is released as stable, but I don’t think I will perform well with this special case.

So the next step is to do some memory indexing on my own. The first question was to find out which of the collections in .NET is the fastest and which uses the least memory.

The tests were all done on my laptop with as few programs running as possible. This would make the results fairly reliable, but I can’t guarantee that the results are fully correct. But I trust them and will base my future development upon them. 

The time column shows the total time of a fixed number of lookups.

One string stored 10 million times with <int> Key

This test stores the same string in all the records in the collection. Because of this the difference in size should only reflect the key index.

Size (MB) Time (ms)
Dictionary<int, string> 267 235
SortedDictionary<int, string> 534 4484
Hashtable 547 1851
SortedList<int, string> 114 2156


10 million unique strings stored with <int> Key

This test stores different strings in all the records in the collections. This will create a more realistic test of the memory usage.

Size (MB) Time (ms)
Dictionary<int, string> 706 368
SortedDictionary<int, string> 973 4590
Hashtable 985 2286
SortedList<int, string> 553 2122


10 million unique strings stored with <string> Key

If I could have strings as keys I would be able to use the collections in more ways than one. But as you can see some of the lookups became more than 10 times slower than in the tests above.

Size (MB) Time (ms)
Dictionary<int, string> 706 1957
SortedDictionary<int, string> 973 66057
Hashtable 757 2950
SortedList<int, string> 591 74534


1 million sub-collections with 10 strings each with <int> Key

This was another test I did to see if it would be useful to store the data in a tree, so each records in the collection holds another collection. This is a special case for my needs and I don’t expect anyone else to have any use of it. But I did the test, so I give you the numbers.

Size (MB) Time (ms)
Dictionary<int, string> 431 273
SortedDictionary<int, string> 656 801
Hashtable 733 1634
SortedList<int, string> 245 618




The collection with the best performance is Dictionary<> and the collection with most compact footprint in SortedList<>.

The most surprising to me was that the SortedDictionary<> performed so badly.


In an earlier post i linked to this blog that has a great post about performance of the different collections. It has a nice list with all the different collections, but does not talk anything about the memory usage.