Extended = Double in Lazarus Win64

Note to self: In Lazarus Win64 there is no floating point type Extended, it's mapped to Double. So, overloading something like: [delphi] function TryStr2Float(const _s: string; out _flt: Extended; _DecSeparator: Char = '.'): Boolean; overload; function TryStr2Float(const _s: string; out _flt: Double; _DecSeparator: Char = '.'): Boolean; overload; function TryStr2Float(const _s: string; out _flt: Single; … Continue reading Extended = Double in Lazarus Win64

Switching a XenServer VM from HVM to PVM

(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.) Switching a XenServer Linux VM from hardware assisted virtualization to paravirtualization nowadays is quite simple, since most Linux distributions already come with a … Continue reading Switching a XenServer VM from HVM to PVM

Beware: IOTAComponent.GetPropValue needs 4 bytes for an enum

The ToolsAPI interface IOTAComponent declares two methods for getting property values: [delphi] IOTAComponent = interface(IUnknown) // [...] { Given the index or name, returns the property value. The untyped var must be large enough to hold the returned value. If the property is a descendant of TPersistent, the return value is a IOTAComponent. For properties … Continue reading Beware: IOTAComponent.GetPropValue needs 4 bytes for an enum

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)