Browse by Tags
All Tags »
cplusplus (
RSS)
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...
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...
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...
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...
If you find a bug in Visual Studio, report it on http://connect.microsoft.com If the bug affects the version of VS that is in development at that time, there is a significant chance it will get fixed before the next release. Just this week I got confirmation...
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...
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...
I know, I know, ... .NET is all the rage, and DCOM is legacy technology, best not touched by up and coming programmers with good hair and sharp look, lest they appear 'uncool' or even worse: 'obsolete'. But some of us still use DCOM for...
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...
One question that comes up from time to time in the newsgroups is ‘I have a native C++ project and I want to extend it with Managed code (e.g. Windows Forms). What do I do?’ The answer is not so complex. It is fairly easy to extend native...
One of the things that everyone has to do sooner or later is parsing command line arguments into program variables. Even the most trivial command line application needs some input variables to tell it what to do. One of the things in which C and C++ are...
Yesterday, someone in the newsgroups asked a question about synchronization problems he was having. I explained that –if properly programmed– a consumer producer queue does not need synchronization even on a multiprocessor machine. A Microsoft...
This article is a follow up of my third article on interoperability for LabVIEW arrays in C++. That article provided a method for allowing programmers to index into multi dimensional arrays. As far as functionality went, the solution was OK, but the error...
One question that comes up from time to time in the C++ newsgroups is that functions or constants that exist in a C++/CLI class library are not accessible in a C# or VB.NET project. The reason for this is nearly always that that constants or functions...
Learning C# if you already know C++ is relatively easy. The syntax is similar, and the semantics are definitely a lot easier to understand. Since C# looks like C++, most of the concepts are easy to learn, but here and there are a few details that might...
This article is a follow up of my second article on interoperability for LabVIEW arrays in C++. That article provided a method for allowing programmers to index into multi dimensional arrays like this: But that solution was a bit clunky. It involved 4...
Did you ever encounter problems to do with the size of structures in C or C++? In that case, chances are that you had to deal with structure layout and byte packing. You can read my explanation over here .
Yaaaaaaay. Yesterday I received a message to tell me that I received the Microsoft MVP award in the category 'Visual C++'. I knew I was nominated 2 months ago, which I found very cool. Of course I had to wait a bit because the anouncement of the...
My second contribution to the VCFAQ is now online. It discusses 3 common causes of segmentation faults after upgrading a project to a newer version of Visual C++. You can read it over here: http://vcfaq.mvps.org/lang/9.htm
This question pops up in the Visual C++ newsgroups from time to time. You can’t. At least, you cannot directly perform USB communications. USB simply doesn’t work that way. They same is true for PCI, Firewire, SCSI, ... All USB IO has to be...
More Posts
Next page »