Pull to refresh
69.46

Development for Windows *

Developing for Microsoft OSs

Show first
Rating limit
Level of difficulty

How to build and run calculator from Windows XP using GCC x64?

Level of difficultyHard
Reading time63 min
Views1K

Hi Everyone!

In this article we a little bit will analyze of code of Windows XP and will compile the calculator application using GCC x64 in Windows 10 environment. We will look what kind of errors I faced during the build and the methods how to solve them. At the end we will launch the build of the calc.exe application.

Have a nice reading!

Read more
Total votes 6: ↑6 and ↓0+7
Comments0

Top 10 Best Free Partition Manager Software for Windows PC/Laptop

Level of difficultyMedium
Reading time12 min
Views11K

If you are searching for free partition manager software for your Windows PC, then Download the Top and best Partition Manager Software on Windows PC/Laptop.

It is a software program that lets us create, delete, shrink, expand, split, or merge partitions on our hard drives or other storage devices. Without extra software, a hard drive will be partitioned into Windows. But we can’t resize or combine them without any extra help.

The important aspect of owning a PC is to manage your hard-drive partitions very effectively. Based on categories, it divides data to allow people. For example, you can keep your multimedia files, work folders, and your programs in different partitions and install them on your system drive.

If you use your PC to double or triple-boot into various operating systems as a power user. Your SSD or HDD must be divided into smaller partitions; otherwise, it is impossible.

In 2020, in managing software partitions effectively. We help you with Windows and Linux by compiling a list of the best free partition software. So let’s read more to get the free partition manager Windows 10/8/7.

Read more
Total votes 3: ↑3 and ↓0+3
Comments1

Audio API Quick Start Guide: Playing and Recording Sound on Linux, Windows, FreeBSD and macOS

Reading time35 min
Views19K

Hearing is one of the few basic senses that we humans have along with the other our abilities to see, smell, taste and touch. If we couldn't hear, the world as we know it would be less interesting and colorful to us. It would be a total silence - a scary thing, even to imagine. And speaking makes our life so much fun, because what else can be better than talking to our friends and family? Also, we're able to listen to our favorite music wherever we are, thanks to computers and headphones. With the help of tiny microphones integrated into our phones and laptops we are now able to talk to the people around the world from any place with an Internet connection. But computer hardware alone isn't enough - it is computer software that really defines the way how and when the hardware should operate. Operating Systems provide the means for that to the apps that want to use computer's audio capabilities. In real use-cases audio data usually goes the long way from one end to another, being transformed and (un)compressed on-the-fly, attenuated, filtered, and so on. But in the end it all comes down to just 2 basic processes: playing the sound or recording it.

Today we're going to discuss how to make use of the API that popular OS provide: this is an essential knowledge if you want to create an app yourself which works with audio I/O. But there's just one problem standing on our way: there is no single API that all OS support. In fact, there are completely different API, different approaches, slightly different logic. We could just use some library which solves all those problems for us, but in that case we won't understand what's really going on under the hood - what's the point? But humans are built the way that we sometimes want to dig a little bit deeper, to learn a little bit more than what just lies on the surface. That's why we're going to learn the API that OS provide by default: ALSA (Linux), PulseAudio (Linux), WASAPI (Windows), OSS (FreeBSD), CoreAudio (macOS).

Read more
Rating0
Comments0

Visual Studio 2022 — stylish and fresh. How PVS-Studio supported VS2022

Reading time7 min
Views1.3K

Seems like Microsoft has just announced Visual Studio 2022. And it already came out! For us at PVS-Studio, this meant only one thing — we must support this IDE in the next PVS-Studio release. Almost everything went smoothly. However, there were some hitches that we're going to discuss today.

Read more
Rating0
Comments0

Re-checking PascalABC.NET

Reading time8 min
Views604

Welcome all fans of clean code! Today we analyze the PascalABC.NET project. In 2017, we already found errors in this project. We used two static analysis tools (more precisely, plugins for SonarQube): SonarC# and PVS-Studio. Today, we analyze this project with the latest version of the PVS-Studio analyzer for C#. Let's see what errors we can find today, especially when our analyzer has become more advanced and got new features: it can find more exquisite errors and potential vulnerabilities.


0912_PascalABCNET_2/image1.png

Read more →
Total votes 2: ↑1 and ↓1+1
Comments0

Best warnings of static analyzer

Reading time3 min
Views972

Everyone who runs the static analyzer on a project for the first time is slightly shocked by hundreds, thousands or even tens of thousands of warnings. It may be frustrating. Is my code so terrible? Or is the analyzer lying? In any case, filtering by the severity changes the situation, not completely though. That's why we thought about how we could improve the first experience with the analyzer. Let me show you the new feature step by step...

Read more
Total votes 2: ↑2 and ↓0+2
Comments0

Why we need dynamic code analysis: the example of the PVS-Studio project

Reading time10 min
Views895

In May 2021, CppCast recorded a podcast called ABI stability (CppCast #300). In this podcast, Marshall Clow and the hosts discussed rather old news — Visual Studio compilers support the AddressSantitzer tool. We have already integrated ASan into our testing system a long time ago. Now we want to tell you about a couple of interesting errors it found.


0868_PVS-Studio_ASan/image2.png

Read more →
Total votes 3: ↑2 and ↓1+2
Comments0

Controlling Brushless Motors from Windows

Reading time4 min
Views1.6K

In this video, we will look at how to connect brushless motors to a Windows computer via USB. We are going to connect a network of Servosila brushless motor controllers to the computer. The other option is CANbus interface, but we will look at CANbus in a dedicated video. A regular USB cable is used. Note that the USB cable is not used to power the controller and its motor.

The first brushless motor controller in network appears to Windows as a Virtual COM port. Once connected via USB, it can be found in a general list of devices in the Window's "Settings" window. Up to 16 controllers can be connected this way via a single USB cable to the same control computer or a PLC. If one of the interconnected brushless motor controllers is connected to a computer via USB, then that particular controller becomes a USB-to-CANbus gateway for the rest of the network.

If your computer happens to have more that one serial port, you may wish to check a COM port's number assigned by Windows to the controller. Then, you pick this COM port in a drop down menu in the Servoscope software, and click Connect. If the COM port is not listed in the drop-down menu, click the Refresh button. If everything is good, the controller appears in a list of devices. Double-click to open up a control and configuration window.

Video & Read more
Total votes 4: ↑2 and ↓2+1
Comments0

How WCF Shoots Itself in the Foot With TraceSource

Reading time11 min
Views963

We don't often get the chance to write something on parallel programming issues. This time we "got lucky". The TraceEvent standard method has some implementation peculiarities. They resulted in an error with multiple threads blocking. So we'd like to warn users about this nuance and cover this interesting case from our users support practice. Why was our support involved? Keep reading to find out. Enjoy the reading!

Read more
Total votes 5: ↑5 and ↓0+5
Comments0

What Is yield and How Does It Work in C#?

Reading time21 min
Views2.2K

C# capabilities keep expanding from year to year. New features enrich software development. However, their advantages may not always be so obvious. For example, the good old yield. To some developers, especially beginners, it's like magic - inexplicable, but intriguing. This article shows how yield works and what this peculiar word hides. Have fun reading!

Read more
Total votes 2: ↑1 and ↓10
Comments0

Intercepting Program Startup on Windows and Trying to Not Mess Things Up

Reading time12 min
Views3.1K

Have you ever heard of Image File Execution Options (IFEO)? It is a registry key under HKEY_LOCAL_MACHINE that controls things like Global Flags and Mitigation Policies on a per-process basis. One of its features that drew my attention is a mechanism designed to help developers debug multi-process applications. Imagine a scenario where some program creates a child process that crashes immediately. In case you cannot launch this child manually (that can happen for various reasons), you might have a hard time troubleshooting this problem. With IFEO, however, you can instruct the system to launch your favorite debugger right when it's about to start this troublesome process. Then you can single-step through the code and figure what goes wrong. Sounds incredibly useful, right?

I don't know about you, but I immediately saw this feature as a mechanism for executing arbitrary code when someone creates a new process. Even more importantly, it happens synchronously, i.e., the target won't start unless we allow it. Internally, the system swaps the path to the image file with the debugger's location, passing the former as a parameter. Therefore, it becomes the debugger's responsibility to start the application and then attach itself to it.

So, are there any limitations on what we can do if we register ourselves as a debugger? Let's push this opportunity to the limits and see what we can achieve.

Read more
Rating0
Comments3

NTFS Reparse Points

Reading time8 min
Views2.2K
Hi, Habr. Here I have prepared for you a small guide about NTFS Reparse points (hereinafter RP). This article is for those who are just starting to dive into the Windows kernel drivers development. In the beginning, I will explain the theory with examples, then I will give an interesting task to solve.


Read more →
Total votes 11: ↑11 and ↓0+11
Comments0

Don't spoil Desktop Software Engineers with your Mobile First solutions, think about it

Reading time4 min
Views2.1K

image


English translation of Philip Ranzim's post at his blog page here. (With author's permission)


Once upon a time, my girlfriend started using Instagram. She asked me to sign up for it and subscribe to it. I tried — I couldn't do it because you couldn't register at Instagram from a desktop computer. I then thought — how weird people are. Well, what kind of fool would make a software product that can't be used with a normal computer? They won't succeed, and this Instagram will be a marginal service for a bunch of strange women, who for some reason don't like desktops.


It has only been a few years, the market has put everything in place — and the biggest fool was me. And the geniuses at Instagram predicted how and where everything would develop. Today, most of the user applications are made primarily for mobile platforms. At best, they include a universal web client, which is still optimized for mobile phones. Because users love iPhones, not computers. Business people sat down, counted, and made a decision — let's make more money, let's have mobile First everywhere.

Read more →
Total votes 3: ↑3 and ↓0+3
Comments4

Powershell way to exclude folder from Defender list

Reading time2 min
Views4.1K
To exclude some folder from the defender list can be used cmdlet Set-MpPreference
Manly, now you can stop reading, go to the PowerShell and update excludes:)
But if you are want to see how to perform this in more detail — welcome under the habrcut.

UPD: Added a script to add selected folder to excluded Defender locations (at the end of the post)
Read more →
Rating0
Comments0

Windows Native Applications and Acronis Active Restore

Reading time9 min
Views1.8K
We continue telling you about our cooperation with Innopolis University guys to develop Active Restore technology. It will allow users to start working as soon as possible after a failure. Today, we will talk about Native Windows applications, including details on their development and launch. Under the cut, you will find some information about our project, and a hands-on guide on developing native apps.

image
Read more →
Total votes 16: ↑16 and ↓0+16
Comments0

Service for Active Restore or the Story of an Industrial Project at Innopolis

Reading time8 min
Views1.2K
Hello, Habr! My name is Roman. Today I would like to share a story of how we at Innopolis University developed a test stand and a service for Acronis Active Restore system, which will soon become part of the company’s product range. Those interested to know how the University builds its relationship with industrial partners are welcome to click the «Read More» button.

image
Read more →
Total votes 14: ↑14 and ↓0+14
Comments1

Active Restore: Can we Recover Faster? Much Faster?

Reading time5 min
Views1.6K
Backing up valuable data is a proven practice, but what if we need to continue work immediately after a natural disaster or other disruptive events, and every minute is important? Our team at Acronis decided to see how quickly we can start an operating system. This is our first post from the Active Restore series. Today I will tell you how we launched our project with Innopolis University, which solutions were studied, and what we are working on today. All the details are under the Cut.

image
Read more →
Total votes 9: ↑8 and ↓1+13
Comments0

Authors' contribution