Using Boost::Bind and Boost::Function for Windows Procedure Functions

February 25, 2008

The experiment failed. What was I thinking? I forgot that C++ member functions have an implicit this pointer, that makes them pretty useless as function pointers. Oh well… Onto finding a good thunking library … Who woulda thunk?


Installing the Visual Studio Express Editions « Bit By Bit, Byte by Byte, Word by Word

February 13, 2008

 

Installing the Visual Studio Express Editions « Bit By Bit, Byte by Byte, Word by Word. After playing around with the express versions, I think I’m going to have to fork over $270 to Microsoft for the standard edition. The express versions are severely limited with what they can do, and since I use Visual Studio so much I might as well buy the damn thing.


Installing the Visual Studio Express Editions

February 12, 2008

I’m installing the express editions right now. As much as I like the environment, I’m just not willing to fork over $200+ for the standard edition. If it works, Great!! Otherwise not so great, and I will cough up the money. That $600 rebate might have come in handy right now.


I need a TypeLib viewer

January 22, 2008

Ever since I moved from Visual C++ 6.0 I’ve missed OleView. OleView was released as a sample and continued to work under Windows XP. Under Vista however, everytime I double click on something to read the type library, the application freezes up and goes into an infinite loop. I’ve tried debugging it but due to some laziness on my part and a new idea that’s been forming in my head for some time, I haven’t been able to solve it yet.

Besides there are many other things that are wrong with OleView. OleView relies exclusively for the registry, which really slows it down while it traverses the registry. With Side By Side installation, a theoretical type library viewer should be able to access the type information directly from the component itself, and should the user so desire traverse the registry.


When Returning a COM interface to a scripting client

January 20, 2008

that is not a default dual interface, always create a Standard Dispatch interface using CreateStdDispatch(…) and the IUnknown implementation, and return it as a VARIANT.

… I learned that over the weekend the hard way.


Multiple IDispatch implementations

January 5, 2008

I was designing a simple COM based scriptable DirectX framework, in C++ and ATL. I wanted to support multiple interfaces that were callable from JavaScript. Unfortunately, scripting clients cannot access interfaces that are not marked default. One way of handling this was to make my automation compatible interface a super set of all the interfaces that I was going to implement in my coclasses. that just didn’t seem right, and wouldn’t work with coclasses that were aggregated, because the scripting client couldn’t find the aggregated interface.

So I googled the problem and came across this and this that seemed to be relevant.  Chris Sells’ page about multiple IDispatch implementations listed about 5 ways to do this. However, out of all the methods listed only one of them worked without modifying the component. [Method 5 on this Page]. Unfortunately, none of the references listed on the page weren’t working. So I set out to making my own implementation. Last night I finally got it to work properly. Here’s some sample JavaScript code.

var dispqi = new ActiveXObject(“MultiDispQI.CoDualInterfaceQuery”);
var dog = new ActiveXObject(“DogCatComponent.DogCat.1″);
dog.Bark();
var cat = dispqi.QueryInterface(dog,”DogCatComponent.DogCat.1″,”ICat”);
cat.Meow();
print();

Here is the source code.


Finally…

July 28, 2007

Live Writer is out of Beta. Although I think it was designed for Windows Vista rather than Windows XP.


Digg|OS X vs. Vista – a GUI development and concept analysis

July 4, 2006

Great article on interface design concepts and developement process on both operating systems. Different company philosophies for different results on user interfaces.
read more | digg story

An interesting article in the design process of Windows Vista and Mac OS X. One of the comments had a link to a video superimposing a presentation about Windows Vista’s upcoming features with all the features that Mac OS X has right now.


Mini-Microsoft: Vista 2007. Fire the Leadership Now!

March 26, 2006

I read this post a couple of days ago on my RSS aggregator. I think that was one day after MS announced, that consumer version of Microsoft Windows Vista would be delayed about 6 to 8 weeks. At the time there were like a few comments on the post. Right now there 419+ comments.

Some MSFT employees are really pissed.


VM Rootkits: The Next Threat

March 12, 2006

I found this a reference to this article on slashdot(link). It describes how researchers at Microsoft Research have combined virtualization technology and rootkits to run spyware and malware on a target computer. The idea is is still in a proof-of-concept, but with open-source virtual machines like Xen and how-to guides for making rootkits, I dont think that hackers will be far behind in figuring how to exploit this.According to the article.

The proof-of-concept rootkit, called SubVirt, exploits known security flaws and drops a VMM (virtual machine monitor) underneath a Windows or Linux installation.Once the target operating system is hoisted into a virtual machine, the rootkit becomes impossible to detect because its state cannot be accessed by security software running in the target system, according to documentation seen by eWEEK.

Today, anti-rootkit clean-up tools compare registry and file system API discrepancies to check for the presence of user-mode or kernel-mode rootkits, but this tactic is useless if the rootkit stores malware in a place that cannot be scanned.

“We used our proof-of concept [rootkits] to subvert Windows XP and Linux target systems and implemented four example malicious services,” the researchers wrote in a technical paper describing the attack scenario.

“[We] assume the perspective of the attacker, who is trying to run malicious software and avoid detection. By assuming this perspective, we hope to help defenders understand and defend against the threat posed by a new class of rootkits,” said the paper, which is co-written by researchers from the University of Michigan.

…Read the article to find out more.