Recently, an issue came up that can cause the Windows Phone SDK 8.0 to fail to install on 64-bit versions of Windows 8 or Windows 8.1. This issue will cause setup to fail and report an error like the following:
A required certificate...

Recently, an issue came up that can cause the Windows Phone SDK 8.0 to fail to install on 64-bit versions of Windows 8 or Windows 8.1. This issue will cause setup to fail and report an error like the following:
A required certificate is not within its validity period when verifying against the current system clock or the timestamp in the signed file.
Microsoft has published a knowledge base article with steps you can use to work around this issue. You can find the knowledge base article at http://support.microsoft.com/kb/2897627. Here is a quick summary of the steps listed there:
Download the .msi and .cab files from the following 4 locations and save them to the same folder on your computer: http://go.microsoft.com/fwlink/?LinkId=257143 http://go.microsoft.com/fwlink/?LinkId=257144 http://go.microsoft.com/fwlink/?LinkId=257145 http://go.microsoft.com/fwlink/?LinkId=257146
Go to the folder that you saved the files to and run Win8SharedSDKTools.msi file.
After installing Win8SharedSDKTools.msi, re-run Windows Phone SDK 8.0 setup and install like normal.

While Nokia is preparing to release a Lumia 525 at the very low end focused on music, the company is also readying a large-screen handset in the same budget category. Twitter account Evleaks first published the "Batman" codename, and sou...

While Nokia is preparing to release a Lumia 525 at the very low end focused on music, the company is also readying a large-screen handset in the same budget category. Twitter account Evleaks first published the "Batman" codename, and sources familiar with Nokia's plans have revealed to The Verge that a handset will fit into Nokia's portfolio of devices just above the existing Lumia 625. Nokia picked a 4.7-inch display for the 625, and we're told that the company will ship Batman with a large-screen too.
We understand that the handset is designed as the top low-end Windows Phone, but the specs will be similar to the existing Lumia 625. Nokia is said to be including a 5-megapixel rear camera on the Batman and a forward-facing VGA camera. ...
Continue reading&hellip;

Microsoft is preparing a significant update to its Windows Phone 8 operating system. While the company has been pushing out smaller General Distribution Releases (GDR), the biggest change to Windows Phone 8 is expected to be released in ...

Microsoft is preparing a significant update to its Windows Phone 8 operating system. While the company has been pushing out smaller General Distribution Releases (GDR), the biggest change to Windows Phone 8 is expected to be released in early 2014. Windows Phone 8.1 will likely include a notification center, changes to multitasking, and even a "Cortana" personal assistant. Check out all the news below as we follow Windows Phone 8.1's progress.
Continue reading&hellip;

Microsoft may be preparing to kill off its Windows Phone back button in a future 8.1 release. Windows watcher Paul Thurrott claims that a single source has indicated the requirement for a hardware back button will be dropped with Windows...

Microsoft may be preparing to kill off its Windows Phone back button in a future 8.1 release. Windows watcher Paul Thurrott claims that a single source has indicated the requirement for a hardware back button will be dropped with Windows Phone 8.1, an update expected to debut in early 2014. The back button typically lets users navigate back to other applications, but Windows Phone users are said to largely use the Start button to navigate home and select other apps.
Improvements to notifications in Windows Phone 8.1
Windows Phone also uses the back button to access a multitasking user interface, but it's not clear exactly how multitasking will operate in Windows Phone 8.1 if the button is removed. Windows Phone 8.1 is said to include...
Continue reading&hellip;

You want to use the TAB key to navigate through a non-dialog,
so you
call Is&shy;Dialog&shy;Message in your message loop,
but it doesn't work!
// code in italics is wrong
MSG msg;
while (GetMessage(&msg, NULL, 0, 0)) {
if (!msg.hwnd...

You want to use the TAB key to navigate through a non-dialog,
so you
call Is&shy;Dialog&shy;Message in your message loop,
but it doesn't work!
// code in italics is wrong
MSG msg;
while (GetMessage(&msg, NULL, 0, 0)) {
if (!msg.hwnd || !IsDialogMessage(msg.hwnd, &msg)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
The problem here is that you are passing the wrong
window handle to
Is&shy;Dialog&shy;Message.
The first parameter to
Is&shy;Dialog&shy;Message
is the dialog-like window you want to be able to navigate through.
But the code above passes the window that received the message,
so you are basically telling the control to do TAB navigation
within itself.
And naturally, the result of that is that focus stays where it is,
because if you ask a button,
"Hey, could you move to your next tab stop?"
the button is going to say,
"Dude, I'm the only tab stop on my window!"
If you think about it,
passing the window the message was already going to be dispatched
to isn't very interesting.
If that was the design of the function,
then all the work of
Is&shy;Dialog&shy;Message
could've just been put in
Def&shy;Window&shy;Proc
and we wouldn't have needed a
Is&shy;Dialog&shy;Message
function in the first place.
And if you think about it,
passing the window the message was already going to be dispatched
to isn't very interesting.
If that was the design of the function,
then the parameter isn't necessary.
The function could just infer it directly from the
MSG structure you passed as the second parameter.
The fix is to pass the main window handle to
Is&shy;Dialog&shy;Message:
MSG msg;
while (GetMessage(&msg, NULL, 0, 0)) {
if (!msg.hwnd || !IsDialogMessage(hwndFrame, &msg)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
Reminder:
As noted in the original article,
you should not use the WM_USER or
WM_USER + 1 messages
in your custom window.

What if you could re-invent the telephone company and/or OTT (over-the-top) services using WebRTC? Do you remember all of their service upgrades on top of basic phone services? Here are some of the services from telecoms of yesteryear an...

What if you could re-invent the telephone company and/or OTT (over-the-top) services using WebRTC? Do you remember all of their service upgrades on top of basic phone services? Here are some of the services from telecoms of yesteryear and even Skype from a decade ago:
In/Outbound minutes
Phone numbers (DIDs)
Vanity phone numbers
Tollfree numbers
Premium Rate 900 numbers
Hunt group ringing
Caller ID read more

FOR ALL YOU’RE DOING – FOR YOUR ENTIRE TEAM – SUCCEED, TOGETHER And get a free Surface or XBox One!* I'll be there presenting a workshop and a few breakout sessions... join me and a great number of other great speakers! October 27-31, 20...

FOR ALL YOU’RE DOING – FOR YOUR ENTIRE TEAM – SUCCEED, TOGETHER And get a free Surface or XBox One!* I'll be there presenting a workshop and a few breakout sessions... join me and a great number of other great speakers! October 27-31, 2013MGM Grand, Las Vegas, NevadaRegister Now! [Use the code CONNELL for a discount] SHAREPOINT INTERSECTION 2013 is an entirely new type of event, and it’s the one event you won’t want to miss. Join the world’s top SharePoint experts, Microsoft’s own product team, and hundreds of peers representing IT, business, developer, and design communities as we intersect to solve business problems and to maximize the value of SharePoint for our organizations. SharePoint Intersection features more than 50 sessions presented by the best-known names in the industry. As if that’s not enough, five full-day workshops dive deep into key challenges and workloads. FOR ALL YOU’RE DOING: Training at SharePoint Intersection is not just “50 random sessions”. Instead, the event’s sessions have been carefully laid out to deliver end-to-end guidance and solutions across 11 scenarios or “workloads” Developing Apps and Enterprise Solutions Administering and Managing SharePoint Upgrading and Migrating to SharePoint 2013 Strategy, Governance, Adoption, and the Business of SharePoint SharePoint in Office 365, the Cloud and Hybrid Environments Collaboration and Content Management: ECM, IM, RM and DM Search with SharePoint Workflow, Business Process Management and Automation Insight, Business Intelligence and Data Visualization with SharePoint and SQL Server Branding, Design, and User Experience SharePoint Social and Yammer FOR YOUR ENTIRE TEAM: Unlike other events, SharePoint Intersection’s content chairs—SharePoint MVPs Andrew Connell and Dan Holme—have assembled an event that addresses the needs of everyone who is involved with, touched by, and impacted by SharePoint. You’ll find best-of-class content, whether you are a Developer IT Pro Business manager or platform owner Business user Designer SUCCEED TOGETHER: When it comes to maximizing the business value of SharePoint, and delivering real business needs, it takes the entire team. We must come together, as business, IT and developers, to solve our problems. At SharePoint Intersection, each scenario or workload features a unique Intersection Session, in we bring together IT, business, developers and our SharePoint Experts to answer questions, tackle the most pressing issues, get on the same page, and to build a path to success. We’re confident that the open forum Q&A style of these Intersection sessions will be among the most valuable experiences you take away from SharePoint Intersection. BEYOND SHAREPOINT: SharePoint Intersection is just one of the events that is part of DEV INTERSECTION. And as a SharePoint Intersection attendee, you have full access to dozens of sessions across other Intersection events, covering SQL, ASP.NET, Visual Studio, Azure, and Open Source. *When you make the most of SharePoint Intersection by registering with a Show Package that includes one or more full-day workshops, you’ll receive your choice of an XBOX ONE or SURFACE RT! See the website for details.

A myriad of new methodologies and technologies from Cloud Computing to BYOD have changed the IT landscape demonstrably. In parallel, higher-value functions around data, customer engagement and revenue growth are pushing CIOs to consider ...

A myriad of new methodologies and technologies from Cloud Computing to BYOD have changed the IT landscape demonstrably. In parallel, higher-value functions around data, customer engagement and revenue growth are pushing CIOs to consider alternative approaches. The nexus is moving IT to a zero footprint infrastructure model. Organizations including Healthcare, Financial Services, Insurance and Airlines are moving in this direction. Unfortunately, traditional IT paradigms present a challenge to adopting these new methodologies.
In his session at the 13th International Cloud Expo®, Tim Crawford, an internationally renowned thought leader, will outline the issues, opportunities and steps required for the move. Not moving is no longer an option, but Moving to a Zero IT Infrastructure Footprint is not a panacea without challenges. He will also discuss the challenges and how to address them and cover the higher-value opportunities that CIOs are striving for that lead to significant changes in the IT constructs. Moving to Zero IT Infrastructure is one of the first strategies in the journey.
While moving to a Zero IT Infrastructure Footprint is not a panacea, attendees will understand the challenges that moving brings and how to address those changes. In the end, attendees should understand the value for moving and the next steps they can take within their own organizations to get started.read more

Microsoft has awarded its first ever $100,000 bounty to a security researcher who discovered a bug in Windows 8.1. The software giant has traditionally shied away from paying rewards for security issues, but the company announced its fir...

Microsoft has awarded its first ever $100,000 bounty to a security researcher who discovered a bug in Windows 8.1. The software giant has traditionally shied away from paying rewards for security issues, but the company announced its first bug bounties earlier this year specifically designed for Windows 8.1 and Internet Explorer 11. A Google engineer was first to profit from the bounties with a reward for an IE11 bug.
While Microsoft was offering up to $11,000 for IE exploits, the big money was invested in "truly novel" exploitation techniques against Windows 8.1. James Forshaw, a security researcher at Context Information Security, picked up the full $100,000 bounty for detailing a bug that worked around some protections in the...
Continue reading&hellip;

I was thinking, which is a bit dangerous, about Voron’s backup story, and things sort of started to roll down the hill from there. Nitpicker note: None of the things that I am discussing here is actually novel in any way, I am well awar...

I was thinking, which is a bit dangerous, about Voron’s backup story, and things sort of started to roll down the hill from there. Nitpicker note: None of the things that I am discussing here is actually novel in any way, I am well aware of that. I am articulating my thought process about a problem and how it went down from an initial small feature to something much bigger. Yes, I am aware of previous research in the area. I know that Xyz is also doing that. Thank you in advance. Voron’s backup story is a thing of beauty, and I can say that because I didn’t write it. I took it all from LMDB. Basically, just copy the entire file in a safe and transactional manner. However, it cannot do incremental backups. So I started thinking about what would be needed to happen to get that, and I found that it is actually a pretty easy proposition. Whenever we commit a transaction, we have a list of modified pages that we write back to the data file. An incremental backup strategy could be just: Do a full backup – copy the full data file and put it somewhere. Keep track of all the modified pages in a log file. Incremental backup would just be copying the change log elsewhere are restarting the change log. Restoring would happen by taking the full data file and applying the changes to it. This looks hard, but not when you consider that we always work in pages, so we can just have a change log format like this: The process for applying the change log then becomes something like this: foreach(LogEntry entry in GetLogEntryFiles())
{
foreach(Page page in entry.Pages)
{
WritePageToDataFile(page.PageNumber, page.Base);
}
}
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
And voila, we have incremental backups.
Of course, this means that we will have to write the data twice, once for the incremental log file, and once for the actual data file. But that led me to another series of thoughts. Once of the areas where we can certainly do better is random writes. This is an area where we have a particular problem with. I already discussed this here. But if we already have a log file (which we need to support incremental backups), and if we already write twice… why not take advantage of that.
Instead of having a change log, we can have a write ahead log. That turn all of our writes into sequential writes. Leading to much faster performance overall.
The downside of write ahead logging is that you are going to need to do a few important things. To start with, there is a point where you need to spill the write ahead log into the actual file. That leads to doubling the costs of writes, in comparison to LMDB’s usual manner of only a single write. It also means that you now have to implement some form of recovery, since we need to read the log at startup.
The benefits however are pretty good, I think. There is a reason why most databases have some form of Write Ahead Log to make sure that their writes are sequential. And the nice thing about it is that we can now flush only very clearly defined section of the file, and only do fsyncs on the actual log file.
The idea now becomes:
In the data file header we add record to indicate what is the last flushed log file, and up to where in the log file we flushed. We pre-allocate a log file with 64MB, and start write to it using mem map.
We also write to the en