C++ programming on Cloud 9

A weblog dedicated to Visual C++, interoperability and other stuff.

Browse by Tags

All Tags » Windows Platform (RSS)
Installing Windows 7: Defeating the black screen
After tech-ed I am excited about developing for Windows 7, and playing with the parallel computing toolset that is going to be part of Visual Studio 2010. Since my existing partitions were already quite cramped, I thought I’d install 7 on a new disk so...
Practical ATL: Solving the race condition in CAtlExeModuleT
When I was spelunking through the ATL header for my previous articles (the class object plumbing) I discovered that there is a serious race condition in the server lifetime management. I contacted the Microsoft C++ folks, and someone from the libraries...
The kerberos client received a KRB_AP_ERR_MODIFIED error
This is what I got in the event logs yesterday afternoon: Event Type: Error Event Source: Kerberos Event Category: None Event ID: 4 Computer: SE-SMURF01 Description: The kerberos client received a KRB_AP_ERR_MODIFIED error from the server PC-BLABLA09...
Scheduled task would not run
The scheduled task for running ntbackup on our fileserver would not run anymore. It would stop with a return code of 0x80, and nothing worthwhile in the log file or event log. It ran fine for months, apart from the occasional hickup such as having no...
Practial ATL: Implementing a non-standard class object
In my previous article in this series, I explained how class objects are associated with COM objects, and how it all fits together. Armed with that knowledge, I can now demonstrate how to provide a custom class object that will allow us to support parameterized...
Practical ATL: Understanding the class object
In my previous article in this series, I explained how to create a simple COM server and implement a method that returns an enumerator object. It was all done very easily, but the ATL wizards hide some of the things that you really ought to know for my...
Practical ATL: recognizing marshalling problems
Before I publish my next article, I should explain something else about the black magic aspect of ATL / COM: Marshalling. The Stuff server we made in the previous article is an out-of-proc server. This means that the arguments being passed to / from a...
Practical ATL: Implementing an enumerator object
This is my first article about practical ATL examples, which I already mentioned here. In this example I will create an ATL Server which implements 1 custom interface: IStuff. Hardly an inspiring name, but I couldn’t think of anything better before...
Getting started with ATL
I am currently working on some projects where I have to program a DCOM server. There are several reasons why it has to be DCOM and C++, instead of e.g. .NET remoting and C#. The biggest pain (imo) about DCOM is that the technology stems from an era when...
Backing up event logs in their normal binary format
Some time ago I was looking for a way to make backups of the eventlogs of our server, preferably without me ever having to do anything anymore J This was not success. There are a couple of tools to make text exports from eventlogs. These have the disadvantage...
Visual Studio 2008 on Windows 2003
I've had a weird problem on my development station for some time now. Every time I ended a debugging session of a C# project, visual studio froze for about 10 seconds. It also happened if I changed project settings, but I never had any problems with...
Windows Instant On
Something I picked up on slashdot today: Microsoft is checking if people would want an 'instant on' version of Windows . As compelling as it sounds, I don't think it is that big a deal, and they shouldn't waste their time with it. These...
Installing a service pack: how much space do you need.
Yesterday I had to install VS2008 SP1 on a computer with limited disk space on C:\ Even though VS2008 itself was installed on D:\ the installer (which is 800MB) still required 3.3 GB of space on C:\ I molested C: until I had enough space to perform the...
Windows 7 Engineering blog
I just stumbled upon the engineering blog for Windows 7 . Seems interesting enough to follow in order to have a better idea about what Windows 7 will be like from a technical point of view.
My latest article in NTInsider
A bit late perhaps, but my latest article on API development got published in the NTInsider (owned by OSR Online ). The online version can be found here . It requires free registration. I know that at least 2 people have read it completely, because that...
How DLL exports really work
I found this list of article on Raymond's blog . Raymond's blog is one of the more interesting for programmers who use native APIs because he often touchs on things that are not documented, but interesting to know if you care about how things...
The ancient art of circles and lollipops, part 2
Some time ago I started learning COM server programming by creating a COM server from scratch, using only the raw Win32 API functions. I started out with a very basic server, and then added new functionality with each new 'release'. Since there aren't...
Vista woes
Here I am, getting to know my new PC. It is a racehorse: 4GB of DDR2 Core2Duo 2 6600 Nvidia GF-7950 VT WD 320GB SATAII, 16 MB Cache, 300MB/s, RAID-1 I installed Vista64 because I want to use that as a development platform and test target. Of course I...
The ancient art of circles and lollipops
Since I will have to do COM in my new job, I wanted to make sure I knew COM inside out. I have used COM before, but only client side. I never wrote a COM server. So I decided to finally work my way through ‘Essential COM’ to learn the nitty gritty details...
Source code for the user mode part of my USB tutorial driver
Sometime ago I wrote 2 length articles on writing device drivers, using the new Kernel Mode Driver Framework that is the bees-knees when it comes to kernel mode programming. Of course, I had to have a demo application to interact with the device drivers...
More Posts Next page »