Domain: microsoft.com
Stories and comments across the archive that link to microsoft.com.
Comments · 34,132
-
Re:Does it say how to shut off reporting?
Go to task scheduler, identify the various jobs that deal with user data telemetry, and set them to "disabled". The OS will continue to collect data, but it will never be sent.
Sadly they have the telemetry tendrils very deep and plentiful into the system.
Scheduled tasks are not the only processes that submit the stored data.
There are even functions in "service host" to both send data and undo tampering with other telemetry processes. Simply disabling svchost would rightly fuck most everything on the system.There are lists of hosts you can block in an external firewall, but naturally Microsoft doubled up duty for those hosts, so that may break other things.
Also don't forget that Win 10 now can fall back to peer-to-peer as well, so it can get updates and relay diagnostic info through other Win 10 systems on the LAN that do have access to those MS hosts.One thing I've never explored, though - where does the OS store that data pending its journey to Microsoft? You could have another scheduled job clearing (or better, poisoning) that data every few minutes.
It's littered around in many places. Event logs, system folders, the windows data store, applications individual logs, etc.
Here's a tool from MS that will gather all those locations up in one view, similar to how event viewer does for the normal logs:
https://docs.microsoft.com/en-us/windows/privacy/diagnostic-data-viewer-overviewAt the very least go check out that first screen shot. See the list of telemetry sources on the left? See the size of that scroll bar? It's fucking disgusting.
I've been using a modified version of this for a few years:
https://github.com/W4RH4WK/Debloat-Windows-10/blob/master/scripts/block-telemetry.ps1Some of the domains in there that it blocks are commented with other functions that break by blocking it.
From personal experience:
You'll need to setup an NTP and SNTP server and manually point windows to it. Clock drift can break various forms of encryption.
Windows will be convinced you have no internet connection anymore, and I've had a few programs check that status and refuse to even try (spotify, nvidia experience, and a couple games)
Make sure you don't have any programs installed from the MS store you want to keep, they won't be able to validate their licenses. Even free ones.
Hope you didn't upgrade from home to pro or from pre-10 to 10 using an online license :PAll Microsoft AV software will stop updating, so you'll want to be sure to have something from a 3rd party. 10 gets annoying with the notifications with nothing installed/active.
Some things that break but are likely considered a good thing:
Windows updates, bing and all integrated searches (start menu search included), contra, skype, itunes, and newer versions of office (2016 and 365 have issues, but 2010 continues to work fine, haven't tried others)Good luck
-
.....ABOUT TIME!
A couple months ago I was asked to use the "Windows 10 security baseline" to determine the security of our v1809 image before we rolled it out.... The baseline turned out to be a vague spreadsheet full of random registry key changes and a GPO policy that you're supposed to import. It was hard to believe that the closest thing MS had to an official security framework for their own OS was a half-assed spreadsheet and a policy!
At least now we have official configuration frameworks to compare our workstations against. If every OS had an in-depth security framework the world would be a *slightly* safer place.
-
Re:Internet Explorer 8 is dead?
The only version of Internet Explorer Microsoft even supports anymore is IE11, and that's only through security updates.
-
Re:If they are running Windows 10...
So yeah Microsoft projects from Windows 8/10 and up are definitely NOT GDPR compliant.
Actually they are. I don't know why you think a company storing personal information cannot be GDPR compliant, they just need to provide users the ability to delete that data and they do that via the Privacy Dashboard.
I know it's popular to bash Microsoft around here but your post just demonstrates a fundamental misunderstanding of what the GDPR is.
-
Re:Using Linux is considered illegal tinkering.
It seems really odd, then, that Microsoft has spent a very significant amount of time and money creating and expanding the support for the revolutionary WSL (Windows Subsystem for Linux) in Windows 10, which allows you to run a full Linux OS environment transparently on top of the native Linux kernel. Microsoft supports Linux in very meaningful ways now: The Microsoft Store currently offers Ubuntu, OpenSUSE (two versions), Debian, and Kali as WSL distros.
If you run Win 10 on anything and haven't tried WSL, you're really missing out - there's some very serious, and very good, software engineering (not just development) going on at MS to support Linux on Windows, and it's improved a LOT in the past few years. (See https://devblogs.microsoft.com... for more information.) They not only took the time to make sure Linux development environments work well on Windows, but they also made substantial changes to Windows itself, including, finally, updating the ancient, crippled, and otherwise horrible Windows command/terminal model!
In addition, MS is also putting a LOT of effort into supporting things like PowerShell on Linux (it's very different, but it does do some things way better than the traditional Unix/Linux tools, mainly since its pipelines handle structured data instead of just text.) I'm not fully convinced that PoSH is the way all of these things should work, but it's clear that this it's the first time in decades that anyone has taken a good, honest look at how these things *need* to work in 21st century systems, and Linux folks should give it a good hard look, as I could see it becoming a vital and important part of the enterprise/cloud/container Linux environments that everyone recognizes are important going forward. (See https://docs.microsoft.com/en-... )
I will probably never use a Linux desktop again - Windows 10 is just dramatically better in almost every way that matters (especially pen/touch support, which brings a computer into the 21st century - I'll never again settle for a "caveman laptop" after using Surfaces!), and it now offers all of the Linux features I want and need. It really is the best of both worlds. (And I say this as someone who once had some serious (and not reactionary, but seriously justified) dislike of Microsoft - check my
/. posts from 20 years ago. I have no affiliation with Microsoft - I just like and admire what they're doing to bring together the best of Windows (doing lots of things Linux *cannot* do) and Linux (doing most things standalone Linux *can* do), and their commitment to partnering with the Linux community (see distros above for starter list) to create a fusion that's truly better than either OS alone. -
Re:Using Linux is considered illegal tinkering.
It seems really odd, then, that Microsoft has spent a very significant amount of time and money creating and expanding the support for the revolutionary WSL (Windows Subsystem for Linux) in Windows 10, which allows you to run a full Linux OS environment transparently on top of the native Linux kernel. Microsoft supports Linux in very meaningful ways now: The Microsoft Store currently offers Ubuntu, OpenSUSE (two versions), Debian, and Kali as WSL distros.
If you run Win 10 on anything and haven't tried WSL, you're really missing out - there's some very serious, and very good, software engineering (not just development) going on at MS to support Linux on Windows, and it's improved a LOT in the past few years. (See https://devblogs.microsoft.com... for more information.) They not only took the time to make sure Linux development environments work well on Windows, but they also made substantial changes to Windows itself, including, finally, updating the ancient, crippled, and otherwise horrible Windows command/terminal model!
In addition, MS is also putting a LOT of effort into supporting things like PowerShell on Linux (it's very different, but it does do some things way better than the traditional Unix/Linux tools, mainly since its pipelines handle structured data instead of just text.) I'm not fully convinced that PoSH is the way all of these things should work, but it's clear that this it's the first time in decades that anyone has taken a good, honest look at how these things *need* to work in 21st century systems, and Linux folks should give it a good hard look, as I could see it becoming a vital and important part of the enterprise/cloud/container Linux environments that everyone recognizes are important going forward. (See https://docs.microsoft.com/en-... )
I will probably never use a Linux desktop again - Windows 10 is just dramatically better in almost every way that matters (especially pen/touch support, which brings a computer into the 21st century - I'll never again settle for a "caveman laptop" after using Surfaces!), and it now offers all of the Linux features I want and need. It really is the best of both worlds. (And I say this as someone who once had some serious (and not reactionary, but seriously justified) dislike of Microsoft - check my
/. posts from 20 years ago. I have no affiliation with Microsoft - I just like and admire what they're doing to bring together the best of Windows (doing lots of things Linux *cannot* do) and Linux (doing most things standalone Linux *can* do), and their commitment to partnering with the Linux community (see distros above for starter list) to create a fusion that's truly better than either OS alone. -
Re:I smell BS
Also, here are image/article sources showing the same behavior I'm describing (Quick Removal as default) on
Windows XP
Windows Vista
Windows 7
Windows 8.x
Windows 10 -
Re:I smell BShttps://support.microsoft.com/...
Beginning in Windows 10 version 1809, the default policy is Quick removal.
So MS at least thinks you are wrong.
-
Re:No Microsoft IDE will ever be as usable as VB6
This is absolutely hilarious and total utter BS.... Visual Basic 6 better than Visual Studio and
.NET !!?And what could you do with VB6? windows apps? Console Apps? Answer: In summary almost nothing,
OK yes in it's day it was pretty good. At that time, I actually much preferred Delphi, which funnily enough was created by Anders Hejlsberg, the same man that Microsoft recruited to bring us
.NET.MS
.NET is cross platform and you can use it for pretty much any kind of application you can think of.There's nothing you could do in VB6 that you can't do better and faster in Visual Studio and
.NET. Including multi-dimensional arrays of "database objects" and "true debugging"... -
Re:Noooo!
cmake is supported since VS2017.
-
Re: Lack of new features in Visual Studio 2019
https://docs.microsoft.com/en-...
Or you could look at what's actually changed
-
Re:Skipping 1809?
You can skip Windows 10 builds. Just do an in-place upgrade. Create the USB drive with the Windows Media Creation tool, leave the flashdrive in place, then just run the setup from it. Alternatively, boot from the flash drive and perform a clean install.
-
Java is Dead and Oracle Killed It
Oracle doesn't respect engineers. Why would you want to cast your lot with Java when it's controlled by a colossal prick like Ellison, who is worse than Bill Gates and Steve Ballmer together on their worst days? Meanwhile, Microsoft has genuinely reformed under the leadership of Satya Nadella while Oracle remains unrepentant and committed to the bad old lock-in days of the 1980s and 1990s. Why not switch to an ecosystem where the engineer is acknowledged and respected? The consultation is free, switch today.
-
Re:Redmond, start your photocopiers
Speaking of revolutionary features, when is Windows going to get grep?
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/select-string?view=powershell-6
Or if you're biased against object oriented languages and want to go farther back https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/findstr. -
Re:Redmond, start your photocopiers
Speaking of revolutionary features, when is Windows going to get grep?
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/select-string?view=powershell-6
Or if you're biased against object oriented languages and want to go farther back https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/findstr. -
Re:Cloud Computing
As long as most of the global computing power doesn't physically belong to corporations
I feel like this is already happening. Microsoft is working hard in this direction with their Azure environment. Google already has the chrome box.
...average internet isn't accessible everywhere and its speed isn't high enough
All we'll be doing is basically remote desktop.
-
View the CPU and memory usage in Windows. Free.
In Windows, you can view the CPU and memory usage using the free Process Explorer.
Mark Russinovich may be the best programmer Microsoft ever hired. My experience is that most Microsoft programmers leave obvious defects in what they write. Do Microsoft programmers do that so that there will always be more work for them to do? -
Azure has a Glacier offering...
Microsoft Azure Blob Storage Archive Teir is 0.0025 USD/GB; vs AWS Glacier at 0.004 USD/GB.
Azure pricing details - just stick to the Archive column.
LIke Glacier, there are early deletion fees and a higher IO price and similar, and lower performance. You have to 'hydrate' an archive teir blob back to hot or cool before you can access it, and this could be pontentially 15 hour operation to rehydrate (the major downside!). There's also the cool teir which has a slightly lower SLA than the normal hot tier, has an early delete fee as well as higher transaction costs - but still has millisecond response time. Costs 0.0152
/GB vs $0.0208/GB for the 'hot' tier.You can even have different blobs at different teirs within the same account.
And I acknolwedge it's not quite the same as Glacier, but it might be an option for your application.
-
Azure has a Glacier offering...
Microsoft Azure Blob Storage Archive Teir is 0.0025 USD/GB; vs AWS Glacier at 0.004 USD/GB.
Azure pricing details - just stick to the Archive column.
LIke Glacier, there are early deletion fees and a higher IO price and similar, and lower performance. You have to 'hydrate' an archive teir blob back to hot or cool before you can access it, and this could be pontentially 15 hour operation to rehydrate (the major downside!). There's also the cool teir which has a slightly lower SLA than the normal hot tier, has an early delete fee as well as higher transaction costs - but still has millisecond response time. Costs 0.0152
/GB vs $0.0208/GB for the 'hot' tier.You can even have different blobs at different teirs within the same account.
And I acknolwedge it's not quite the same as Glacier, but it might be an option for your application.
-
Re:I just don't get it
Or an even better use case- you have emulators on PC (which are banned on the XBox Store)
Then how is Haunted: Halloween '86 for Xbox on Microsoft Store? It's almost certainly an NES emulator, seeing as the exact same game is also for sale on cartridge. I'm under the impression that it slides by rule 10.13.10 on grounds that it's self-contained and won't run ROMs other than the packaged one.
But your "even better use case" is valid: You're playing a game for another platform, be it Windows or something a Windows PC can emulate, whose publisher hasn't rereleased it on Xbox.
-
Re:I just don't get it
Or an even better use case- you have emulators on PC (which are banned on the XBox Store)
Then how is Haunted: Halloween '86 for Xbox on Microsoft Store? It's almost certainly an NES emulator, seeing as the exact same game is also for sale on cartridge. I'm under the impression that it slides by rule 10.13.10 on grounds that it's self-contained and won't run ROMs other than the packaged one.
But your "even better use case" is valid: You're playing a game for another platform, be it Windows or something a Windows PC can emulate, whose publisher hasn't rereleased it on Xbox.
-
Re:offer upgrade for free again...
You can upgrade for free. I've done it for several people in the last year.
They don't advertise it broadly because they do not want small companies to migrate to Windows Home edition to save money on upgrading, but you can upgrade Home edition for free using the installer.
https://www.microsoft.com/en-u...
If it doesn't accept your serial number in Windows 7, then you can just reverse the upgrade back.
-
Re:Too bad MacOS isn't broken beyond repair
I run Linux hosts at home with Windows 7 and other Linux VMs. It's trivially easy, doesn't cost a dime, and VMs are handier than bare metal installs in many ways. Reverting to a clean snapshot can be quite handy.
Windows 7 ESUs will leak then find out how to download them if you care.
Clean 7 images from MSFT, get 'em while you still can: https://www.microsoft.com/en-u...
For practice you can load 10 in a VM on your 7 host. Try various bullshit defeat utilities and if you dislike one, revert to a previous or clean snapshot.
-
RDB?
Lots of pressure will come to bear in this case from IBM, Microsoft, and Oracle, who are all suffering from a very specific database problem competing with AWS. Each of these companies sells their own database (DB2, SQL Server, and Oracle, respectively) that they've rolled into their cloud services. AWS's RDB, in contrast, is based on MySQL and costs Amazon almost nothing to support, giving the biggest cloud player a clear pricing advantage.
This is not true.
There are a wide range of database engines to choose in AWS. RDS explicitly lets you choose from Postgres, MySQL, MariaDB or - Oracle or even SQL Server. And guess what else? Microsoft themselves offer a managed MariaDB instance on Azure! This guys post is straight-up bullshit and looks like he did zero fact-checking.
-
My latest project now supports Windows XP!
The multi threading primitive ReleaseSemaphore() (added in XP); is so much faster than SleepConditionVariableCS() (added in Vista) that I dropped support for condition vars and reimplemented them using a good old fashioned semaphore. The silly thing is that semaphore counts down from max threads that can take the semaphore "resource". You can specify a count of semaphore guarded resources to release, but there's no way to get the current held semcount from the Win32 API. So I just wrap the semaphore, track that counter myself... that allows me to perform a WakeAllSemaphore() (missing from sem API).
The Win32 mutex is also so fucking slow when all I need is single process recursive mutex. CRITICALSECTION [a win32 single process Mutex] can't be waited on, and is not recursive / reentrant, so i use a binary semaphore to build waitable mutex, and CRITICALSECTION + GetThreadID() to implement a recursive mutex.
The GCC atomic builtin operations are great for creating short spinlocks before entering the system calls.I've noticed that WaitSingleObjectEx() will return signalling a timeout even when interrupted by asynch procedure calls. Well, no worries, I can detect that a timer hasn't expired and return E_INTERRUPTED instead. However, the newer condvar implementation on both Win32 and pthreads Linux blocks all spurious interrupts. A timer won't break a thread out of the condvar, and on linux this means I can't use a signal interrupt to break out of it, even if I enable that use case per the docs (pthreads is broken too). That means asynch IO and non-blocking IO is a pain in the ass, but I finally got it working great by reimplementing condvars on both linux and windows using interruptable timed waits and simple single process mutual exclusion primitives. The new code using only XP API is about 30 times faster than the same code on the Windows Vista+ API.
Hey, thank's Microsoft for giving me bad documentation and API docs that literally fucking lie about how they behave. Your old code works better than your new shite, so I've dropped support for all API features beyond XP.
I mean, check this out:
SetWaitableTimer There's a link to CreateWaitableTimer... but it 404's as of this post. Gee, sure would be nice to know what that crap does. Wouldn't it be amazing if Microsoft created a web-crawler and could discover broken links in their own documentation? Oh, BINGO! They could even use it to provide search functionality... they could call it "Bing", that's catchy. Nope, had to use Google to dig up the documentation (with broken CSS). It's still on MS's docs site, just hidden and broken, as you expect from shitty software you pay for. I would complain if it was the first time the docs were broken as fuck, but I've yet to use a family of Windows API calls that wasn't subtly broken or incorrectly documented in some way. Hell, the example code for "how to open a file asynchronously in windows" doesn't even compile. (archive) It's missing a curly brace, FFS. Additionally, it's insecure AF, quote my notes: /* [AC] The following code allocates a buffer, then does a formatted print into the buffer,
supplying the buffer size to ensure the formatted data doesn't overrun the buffer, then
then calls _tprintf using that buffer. This is literally retarding to performance and
development as one could use the format string in the _tprintf directly and not allocate
any buffer (or try to protect it from overflow thereafter).Furthermore if the StringCchPrintf fails, the code
-
My latest project now supports Windows XP!
The multi threading primitive ReleaseSemaphore() (added in XP); is so much faster than SleepConditionVariableCS() (added in Vista) that I dropped support for condition vars and reimplemented them using a good old fashioned semaphore. The silly thing is that semaphore counts down from max threads that can take the semaphore "resource". You can specify a count of semaphore guarded resources to release, but there's no way to get the current held semcount from the Win32 API. So I just wrap the semaphore, track that counter myself... that allows me to perform a WakeAllSemaphore() (missing from sem API).
The Win32 mutex is also so fucking slow when all I need is single process recursive mutex. CRITICALSECTION [a win32 single process Mutex] can't be waited on, and is not recursive / reentrant, so i use a binary semaphore to build waitable mutex, and CRITICALSECTION + GetThreadID() to implement a recursive mutex.
The GCC atomic builtin operations are great for creating short spinlocks before entering the system calls.I've noticed that WaitSingleObjectEx() will return signalling a timeout even when interrupted by asynch procedure calls. Well, no worries, I can detect that a timer hasn't expired and return E_INTERRUPTED instead. However, the newer condvar implementation on both Win32 and pthreads Linux blocks all spurious interrupts. A timer won't break a thread out of the condvar, and on linux this means I can't use a signal interrupt to break out of it, even if I enable that use case per the docs (pthreads is broken too). That means asynch IO and non-blocking IO is a pain in the ass, but I finally got it working great by reimplementing condvars on both linux and windows using interruptable timed waits and simple single process mutual exclusion primitives. The new code using only XP API is about 30 times faster than the same code on the Windows Vista+ API.
Hey, thank's Microsoft for giving me bad documentation and API docs that literally fucking lie about how they behave. Your old code works better than your new shite, so I've dropped support for all API features beyond XP.
I mean, check this out:
SetWaitableTimer There's a link to CreateWaitableTimer... but it 404's as of this post. Gee, sure would be nice to know what that crap does. Wouldn't it be amazing if Microsoft created a web-crawler and could discover broken links in their own documentation? Oh, BINGO! They could even use it to provide search functionality... they could call it "Bing", that's catchy. Nope, had to use Google to dig up the documentation (with broken CSS). It's still on MS's docs site, just hidden and broken, as you expect from shitty software you pay for. I would complain if it was the first time the docs were broken as fuck, but I've yet to use a family of Windows API calls that wasn't subtly broken or incorrectly documented in some way. Hell, the example code for "how to open a file asynchronously in windows" doesn't even compile. (archive) It's missing a curly brace, FFS. Additionally, it's insecure AF, quote my notes: /* [AC] The following code allocates a buffer, then does a formatted print into the buffer,
supplying the buffer size to ensure the formatted data doesn't overrun the buffer, then
then calls _tprintf using that buffer. This is literally retarding to performance and
development as one could use the format string in the _tprintf directly and not allocate
any buffer (or try to protect it from overflow thereafter).Furthermore if the StringCchPrintf fails, the code
-
My latest project now supports Windows XP!
The multi threading primitive ReleaseSemaphore() (added in XP); is so much faster than SleepConditionVariableCS() (added in Vista) that I dropped support for condition vars and reimplemented them using a good old fashioned semaphore. The silly thing is that semaphore counts down from max threads that can take the semaphore "resource". You can specify a count of semaphore guarded resources to release, but there's no way to get the current held semcount from the Win32 API. So I just wrap the semaphore, track that counter myself... that allows me to perform a WakeAllSemaphore() (missing from sem API).
The Win32 mutex is also so fucking slow when all I need is single process recursive mutex. CRITICALSECTION [a win32 single process Mutex] can't be waited on, and is not recursive / reentrant, so i use a binary semaphore to build waitable mutex, and CRITICALSECTION + GetThreadID() to implement a recursive mutex.
The GCC atomic builtin operations are great for creating short spinlocks before entering the system calls.I've noticed that WaitSingleObjectEx() will return signalling a timeout even when interrupted by asynch procedure calls. Well, no worries, I can detect that a timer hasn't expired and return E_INTERRUPTED instead. However, the newer condvar implementation on both Win32 and pthreads Linux blocks all spurious interrupts. A timer won't break a thread out of the condvar, and on linux this means I can't use a signal interrupt to break out of it, even if I enable that use case per the docs (pthreads is broken too). That means asynch IO and non-blocking IO is a pain in the ass, but I finally got it working great by reimplementing condvars on both linux and windows using interruptable timed waits and simple single process mutual exclusion primitives. The new code using only XP API is about 30 times faster than the same code on the Windows Vista+ API.
Hey, thank's Microsoft for giving me bad documentation and API docs that literally fucking lie about how they behave. Your old code works better than your new shite, so I've dropped support for all API features beyond XP.
I mean, check this out:
SetWaitableTimer There's a link to CreateWaitableTimer... but it 404's as of this post. Gee, sure would be nice to know what that crap does. Wouldn't it be amazing if Microsoft created a web-crawler and could discover broken links in their own documentation? Oh, BINGO! They could even use it to provide search functionality... they could call it "Bing", that's catchy. Nope, had to use Google to dig up the documentation (with broken CSS). It's still on MS's docs site, just hidden and broken, as you expect from shitty software you pay for. I would complain if it was the first time the docs were broken as fuck, but I've yet to use a family of Windows API calls that wasn't subtly broken or incorrectly documented in some way. Hell, the example code for "how to open a file asynchronously in windows" doesn't even compile. (archive) It's missing a curly brace, FFS. Additionally, it's insecure AF, quote my notes: /* [AC] The following code allocates a buffer, then does a formatted print into the buffer,
supplying the buffer size to ensure the formatted data doesn't overrun the buffer, then
then calls _tprintf using that buffer. This is literally retarding to performance and
development as one could use the format string in the _tprintf directly and not allocate
any buffer (or try to protect it from overflow thereafter).Furthermore if the StringCchPrintf fails, the code
-
My latest project now supports Windows XP!
The multi threading primitive ReleaseSemaphore() (added in XP); is so much faster than SleepConditionVariableCS() (added in Vista) that I dropped support for condition vars and reimplemented them using a good old fashioned semaphore. The silly thing is that semaphore counts down from max threads that can take the semaphore "resource". You can specify a count of semaphore guarded resources to release, but there's no way to get the current held semcount from the Win32 API. So I just wrap the semaphore, track that counter myself... that allows me to perform a WakeAllSemaphore() (missing from sem API).
The Win32 mutex is also so fucking slow when all I need is single process recursive mutex. CRITICALSECTION [a win32 single process Mutex] can't be waited on, and is not recursive / reentrant, so i use a binary semaphore to build waitable mutex, and CRITICALSECTION + GetThreadID() to implement a recursive mutex.
The GCC atomic builtin operations are great for creating short spinlocks before entering the system calls.I've noticed that WaitSingleObjectEx() will return signalling a timeout even when interrupted by asynch procedure calls. Well, no worries, I can detect that a timer hasn't expired and return E_INTERRUPTED instead. However, the newer condvar implementation on both Win32 and pthreads Linux blocks all spurious interrupts. A timer won't break a thread out of the condvar, and on linux this means I can't use a signal interrupt to break out of it, even if I enable that use case per the docs (pthreads is broken too). That means asynch IO and non-blocking IO is a pain in the ass, but I finally got it working great by reimplementing condvars on both linux and windows using interruptable timed waits and simple single process mutual exclusion primitives. The new code using only XP API is about 30 times faster than the same code on the Windows Vista+ API.
Hey, thank's Microsoft for giving me bad documentation and API docs that literally fucking lie about how they behave. Your old code works better than your new shite, so I've dropped support for all API features beyond XP.
I mean, check this out:
SetWaitableTimer There's a link to CreateWaitableTimer... but it 404's as of this post. Gee, sure would be nice to know what that crap does. Wouldn't it be amazing if Microsoft created a web-crawler and could discover broken links in their own documentation? Oh, BINGO! They could even use it to provide search functionality... they could call it "Bing", that's catchy. Nope, had to use Google to dig up the documentation (with broken CSS). It's still on MS's docs site, just hidden and broken, as you expect from shitty software you pay for. I would complain if it was the first time the docs were broken as fuck, but I've yet to use a family of Windows API calls that wasn't subtly broken or incorrectly documented in some way. Hell, the example code for "how to open a file asynchronously in windows" doesn't even compile. (archive) It's missing a curly brace, FFS. Additionally, it's insecure AF, quote my notes: /* [AC] The following code allocates a buffer, then does a formatted print into the buffer,
supplying the buffer size to ensure the formatted data doesn't overrun the buffer, then
then calls _tprintf using that buffer. This is literally retarding to performance and
development as one could use the format string in the _tprintf directly and not allocate
any buffer (or try to protect it from overflow thereafter).Furthermore if the StringCchPrintf fails, the code
-
Re:Thin edge of wedge?
"Dipping their toes?" Wow, where have you been? They've already released THOUSANDS of open source projects, including some massive ones, like
.NET core. -
Re:Because they want it to be better!
They DID both of the things you asked for last year: https://blogs.msdn.microsoft.c... It was included in the ill-fated Windows 10 1809 update though so it may not have yet reached your computer. Next time you update your Windows 10 version it will have both of the features you seek in notepad though.
-
Re:Minor Requests
> make the programmer version allow floating point numbers?
Agreed. In the mean-time here are 3 different solutions (shamelessly stolen from this thread) to show a floating-point in hex:
1. Use Windows Calc
2. Use Javascript
3. Use Unix bc1. Using Windows Calculator press the following hotkeys: (Note: This worked in Windows 7, I'm not sure if it still works in Windows 10. Who knows if MS fucked up the hotkeys...)
a) Integer portion:
Alt-2 (enter number) Ctrl-L Ctrl-P Ctrl-R - Ctrl-R ; Ctrl-C Alt-3 F6 Ctrl-V F5Explanation of what those cryptic hotkeys do:
Alt-2 (switch to Scientific mode) ... enter number or do calculations ...
Ctrl-L (equivalent to MC button)
Ctrl-P (equivalent to M+ button)
Ctrl-R (equivalent to MR button)
-
Ctrl-R
; (equivalent to Int button)
Ctrl-C
Alt-3 (switch to Programmer mode)
F6 (equivalent to DEC button)
Ctrl-V
F5 (equivalent to hex buttonb) Fractional portion:
Alt-2 Ctrl-R - Ctrl-R ; = * 2 y 32 = ; Ctrl-C Alt-3 F6 Ctrl-V F5Exampe: 123.456 will show two outputs: 7B, and 74BC 6A7E
2. Use Javascript. Open up any browser and start the developer console (Windows Chrome press Ctrl-Shift-I)
var n = 123.456;
console.log( n.toString(16) );Will display: 7b.74bc6a7ef9dc
3. Use the Un*x arbitrary precision calculator: bc -l.
bc -l
obase=16; scale=40;123.456 / 1.0
7B.74BC6A7EF9DB22D0E5604189374BC6A7EFNotes
a) make sure you load the math library with -L.
b) You have to use the stupid divide by 1.0 trick to force the full output because bc only defaults to the precision of the input numbers.Sad that MS can't even implement a basic programmer calculator after all these years. LOL.
-
Re:it seems early but it's not
Windows again was lucky there, they used that weirdo format of 100ns ticks in a 64-bit counter that Dave Cutler brought over from VMS. Not saying it makes sense, but it happens to work.
I think the plan with Windows is that there won't be any 32-bit code still running by the time it becomes an issue. Unlike Linux it's not really usable as an embedded OS that'll be around forever, and MS are close to discontinuing the remaining 32-bit Windows versions (XP and Vista are already gone), so all that'll be left is some legacy apps running on a 64-bit base OS.
Since Windows already has a massive infrastructure present that exists to provide shims for broken apps, I'm assuming significant time_t breakage will be addressed the same way if there's anything left by 2038.
In terms of specific protocols, NTP isn't actually that bad since it works on timestamp deltas, not absolute values. Depending on how badly the client is written you can still get problems going to the native date encoding if it's 32-bit, but it's not the hard-fail that it would appear to be.
-
Re:MariaDB CEO Accuses....
Interestingly, and relevant to the topic at hand, Microsoft explicitly announce they are Platinum Sponsors of the MariaDB Foundation, a claim backed by the foundation itself on their homepage. This is possibly part of why they're drubbing in AWS and not Azure -- Microsoft are simply contributing back (financially at least, maybe technically) to the project.
(And, yes, IBM are also listed as a sponsor to the MariaDB foundation, albeit Gold and not Platinum)
It also helps that Microsoft are a lot more up front about what is MariaDB - "Azure Database for MariaDB" is straight up a hosted MariaDB and Azure don't try to hide that (in fact, quite the opposite, they advertise that). (There's also PostgreSQL, MySQL and several SQL Server options). I take one look at "Amazon Aurora" and I would have assumed it was built from scratch!
I also wonder why the Amazon service is so much higher performance than just rolling your own on a VM - at a guess, it's lots of tweaking and/or spreading over many nodes or something.
-
Re:Which replaces PCI. Network card for untrusted
No, the problem is plug-and-play. If the OS didn't install a driver and immediately allow the device to operate as soon as it was plugged in, we wouldn't have this problem. Same with USB but to a less severe extent.
You can actually do that on Windows. I don't know about MacOS.
https://docs.microsoft.com/en-...
Another thing that really helps is encrypted RAM. It makes DMA attacks far less effective.
-
Re:Microsoft : You must update to have updates
This seems to be the standalone update for those who didn't install the original sha-2 support one from 2015. That one had problems, and MS did originally have a bulletin stating that if you have problems with it, you should uninstall it.
Fact check me on this:
https://support.microsoft.com/...
I could be reading it wrong. But it seems that sha-2 support has been in win7 ever since that patch.
-
Re:Funny
Actually, the difference is that Windows works just fine with the standard UNIX line ending (\n'), but many unix programs will crash if they see a DOS line ending ('\r\n'). I'm guessing that Microsoft simply made sure to preserve the line endings already present in a file (like the regular setting in all better text editors), or changed the default to the UNIX endings, which is already handled in Windows (as best as I know) . In fact a recent article annouces UNIX EOL support in notepad
When you see '^M' at the end of every line in a Linux config file you know that someone edited the file on a Windows system. It's a simple fix (dos2unix), but it can really trip up new developers and sometimes even some 'old pros' on a bad day.
-
Re: So create standards-compliant functions Mickey
Microsoft doesnâ(TM)t make a C compiler. VisualC++ is just that a C++ compiler (that just happens to compile some C programs).
Nice try.
But C++ subsumes significant parts of the C language, such as 27.9.2 C library files, on p 1019 of the C++ standard,
Besides, you're fucking WRONG anyway:
C99 Conformance Visual Studio 2015 fully implements the C99 Standard Library
-
Re:I'm starting to hare firefox
Office and Windows updates are not voluntary, and people are having trouble when Office decides to update unexpectedly and locks users out of Office apps. Here's one example: https://answers.microsoft.com/... . This will get even worse in the future.
-
Re:they are half right........
Microsoft already has that covered. Students and teachers can use Office 365 for free. It's like a drug - the first hit is free, and gets you addicted to an expensive lifetime habit.
At least with their old program (where a student could buy a standalone copy of Office for $5), you could continue to use it even after graduating. -
Re: C# Killed Java
Why would he be stuck on
.NET Core 2.0? 2.2 is the current version and is available for the three platforms, as is the 3.0 preview. As for .NET Framework 4 it looks like that won't be getting the same attention as .NET Core anymore https://blogs.msdn.microsoft.c... -
Re:Obligatory
It will tell you how to install Linux?
Here
Or did you need help installing Cygwin?If you need me, I’ll be getting my taint bleached.
Rick Schumann -
Re:Don't waste your time reading the summary or TF
Just yesterday I noticed that "Diagnostic Tools" view in Visual Studio 2017 says: "The content requires a new version of Internet Explorer"
-
Re:Makes sense
Is that actually true?
According to their own numbers only a fairly small part of their income is from advertising. The bulk is selling software, cloud services and XBOX.
-
Re:Typical slashdot article
-
Re:Flash-drive PC's?
Worth looking at something like ntlite.
https://docs.microsoft.com/en-...
System builders start off with something like this, but they will likely either have access to other tools or use something like ntlite to slim things down.
-
Re:Philosophy
Just want to add that Mr. Ageh probably remembers encyclopedias on dozens of disks in a changer, "tech" that was supposed to be the future. We know how that panned out. My experience tells me he is right on the money.
-
Forgot the second link
I forgot to include the second link.
https://news.microsoft.com/199...It's a PR puff piece, of course, so you can filter through the hype to get the information. The summary of that is:
Existing ActiveX controls (previously known as COM components) which were created desktop applications are now supported in IE. -
Re:I just don't understand how that's possible
So according to https://support.microsoft.com/... it's:
1. Vendor-specific (Lenovo only) 2. Dependent on the amount of memory (systems with less than 8 GB of RAM are affected) 3. Somehow related to Secure Boot (disabling Secure Boot is listed as a workaround)
And all the trouble is caused by patching a web browser (however deeply integrated with the operating system)? What the hell?
I work with a lot of these companies and Lenovo is, in my experience (and opinion), the only consumer grade manufacturer that takes security issues seriously. I would not be surprised if Lenovo was the only manufacturer shipping Windows 10 systems with 4GB of RAM and Secure Boot enabled.
-
I just don't understand how that's possible
So according to https://support.microsoft.com/... it's:
1. Vendor-specific (Lenovo only)
2. Dependent on the amount of memory (systems with less than 8 GB of RAM are affected)
3. Somehow related to Secure Boot (disabling Secure Boot is listed as a workaround)And all the trouble is caused by patching a web browser (however deeply integrated with the operating system)? What the hell?
-
Re:No, it's not
I definitely think part of the problem, honestly, is that the whole domain naming system was bad marketing in the first place. It's a pretty clever technical solution, but bad marketing. People got on the internet, and they want to go to find stuff about Sony, so they go to the address bar and type "sony". It doesn't work.
So then someone explains, "No, you have to type http://www.sony.com./"
"Why?"
"I don't know, that's just how the internet works. You have to put 'http://www.' in front of everything and then '.com' at the end of everything. If you want Sony, it's http://www.sony.com./ If you want Microsoft, it's http://www.microsoft.com./ It's too complicated to explain why. It just is."
Then they drop to "www.". Then you don't have to type in the "http://" anymore. Then the address bar becomes a hybrid address/search bar. Most people still don't understand what the deal was with the "http://" or the "www." or the ".com" or why you need any of it. And they still don't have to, and they're not going to. The explosion of TLDs is probably just going to make people rely even more on the reputation of search results.