Making it happen
Archive for March, 2006
VB6 hack of the day
Mar 29th
As Visual Basic supports only 6 versioning tags (Comments, Legal Copyright, etc), I’ve ended up modifying VB6.exe (!) to have another tag available.
C++ language weird parsing
Mar 28th
Incorrectly reported yesterday as a bug, this case is actually a correct behaviour, although not intuitive at all. The problem is that the compiler will try to find a function declaration whenever possible, so in the following case:
BSTR bstr = NULL;
CString s(_bstr_t(bstr));
s = “a”;
Here s is parsed as a function declaration, instead of a variable – this is correct, though (!).
COM Dll injection
Mar 28th
Here’s one very cool technique I’ve learned in the past – used mainly when you have to do lots of automation calls to an out-process server. The point is to move these client calls to a dll and inject it in the exe server – there’s a huge improvement in speed because now it’s in-process.
This should have went into the COM API, or at least in the Win32 api – an official way of injecting a dll (instead of the current hacks that are done usually).
Asm.net
Mar 28th
Very old stuff, but here is an x86 assembly compiler that outputs .net – so now you can write asp.net sites in assembly language
. The entire site is very interesting, it’s the same guy that made the Gmail shell extension.
WJ-S.org
Mar 24th
Pretty dissapointing from a technical point of view
, their software is just playing a list of sites on a network of VNC-controlled PCs. So basically there is a network of PCs with projectors, and from the server you can choose a playlist of sites / movies / pictures to be shown on each of these – with the artist mixing them in real-time, that is. The WiFi connection was just for looking more high-tech.
Besides this, some artists had really good performances – from ironic views of Google in the future to very artsy visual effects and movie mixes.
WJ performance at MNAC tonight
Mar 23rd
Interesting stuff – they mix raw packet data directly from the Internet as I have understood (translated into audio sampels, of course). Will be there to see what is it about.
Hardware XML
Mar 20th
Pretty old, but what do you say about this ? It’s a full-featured hardware XML processing device that accelerates the work with XML and XSL.
C# main loop
Mar 14th
Don’t ever use a normal main loop and a Thread.Sleep call to stop using 100% cpu – better use Application.Run and do you processing on the Idle event.
SQL: Negating conditions
Mar 13th
If you didn’t know, negating where name=’a’ to where not(name=’a') is not what you expect: the records with NULL are not returned. Still – you can quickly negate a condition with not( … ) if you are careful when generating it: simply add and not name is null to the condition. So, again:

