I have made a few changes to the code in Fake TSpeedButton based on a TBitBtn: I replaced all that line drawing with a call to the WinAPI function DrawEdge. I set both bitmaps to Transparent. I moved the bitmap generation to a sub procedure. Thus I got rid of about 20 LOC. That's negative … Continue reading Fake TSpeedButton based on a TBitBtn – updated
Month: January 2018
Fake TSpeedButton based on a TBitBtn
When you google for TSpeedButton and Focus a lot of hits are where people ask how to set the focus to a TSpeedButton and the answer of course is, that it isn't possible because TSpeedButton descends from TGraphicControl which does not have a window handle and therefore cannot receive the input focus. And that is … Continue reading Fake TSpeedButton based on a TBitBtn
Beware: IOTAComponent.GetPropValue needs 4 bytes for an enum
The ToolsAPI interface IOTAComponent declares two methods for getting property values: The comment says "The untyped var must be large enough to hold the returned value." which pretty much lets us guess, how large it must be for an enum (or even a Boolean). Let's say, we want to read the Enabled property of a … Continue reading Beware: IOTAComponent.GetPropValue needs 4 bytes for an enum
Clone a Linux system without imaging it
When I want to clone a Linux system (or the boot partition/drive of any operating system), I usually use Clonezilla and make a image of the boot disk or boot partition. Unfortunately those image files can become quite large and it is a pain in the lower back to restore them on a smaller hard … Continue reading Clone a Linux system without imaging it
Installing Webmin on Ubuntu 16.04 LTS (Xenial Xerus)
The instructions how to install Webmin on Debian (and thereby also Ubuntu) seem a bit outdated because edits to the file /etc/apt/sources.list should be replaced by adding a file to the directory /etc/apt/sources.list.d/. So, instead of adding deb https://download.webmin.com/download/repository sarge contrib to the file /etc/apt/sources.list create a new file /etc/apt/sources.list.d/webmin.list with that content and possibly … Continue reading Installing Webmin on Ubuntu 16.04 LTS (Xenial Xerus)
Switching a XenServer VM from PVM back to HVM
(Disclaimer: I am by no means an expert with XenServer. So please don’t take anything you read here for granted. It’s my own experience and what I found in documentation and online.) If switching a XenServer Linux VM to paravirtualization fails, you usually end up with a non booting VM which is quite annoying. Switching … Continue reading Switching a XenServer VM from PVM back to HVM
How to shrink a Windows VM in XenServer
Apparently shrinking a Windows VM (actually any kind of VM) cannot be done with XenServer and XenCenter. You need to create an image of the original volume to a smaller virtual disk in order to do that. On top of that, the tool that used to work fine for this, Citrix XenConvert, has been deprecated … Continue reading How to shrink a Windows VM in XenServer
System wide mouse gestures with dzMouseGestures
When Mozilla released their last big update, they deprecated quite a few APIs for plugins. One of these plugins was FireGestures which I used to get some of the mouse gestures of Opera in Firefox. There are a few new plugins that try to replace FireGestures but none of them really seemed to work quite … Continue reading System wide mouse gestures with dzMouseGestures
Deleting a XenServer Storage Repository
(Disclaimer: I am by no means an expert with XenServer. So please don’t take anything you read here for granted. It’s my own experience and what I found in documentation and online.) In my previous post, I described how to add a Storage Repository to a XenServer using the xe command line tool. Now, since … Continue reading Deleting a XenServer Storage Repository
Installing XenServer updates via XenCenter fails
(Disclaimer: I am by no means an expert with XenServer. So please don't take anything you read here for granted. It's my own experience and what I found in documentation and online.) There is at least one reason why installing updates for XenServer via XenCenter may fail (with unhelpful error messages of course): You haven't … Continue reading Installing XenServer updates via XenCenter fails