If Ctrl+Alt+F8 disables your secondary monitor

 Windows  Comments Off on If Ctrl+Alt+F8 disables your secondary monitor
Nov 182018
 

I just pressed Ctrl+Alt+F8 and wondered why all of a sudden my secondary monitor went blank. Turns out that this is a “Feature” of the Intel HD graphics driver.

It restores the graphics default.

And since it is such a great feature, you can’t disable or customize this hotkey. Great work Intel!

Again StackOverflow was helpful. It also provided a workaround: Using AutoHotkey you catch that hotkey to do something else, e.g. show a dialog. And since I already use AutoHotkey, I added the following to my default script:

; Disable the shortcut of the Intel Graphics driver for resetting the graphics settings
; Whoever came up with this functionality and made it impossible to disable the shortcut
; is an idiot!
^!f8::msgbox, You hit Ctrl+Alt+F8 which would have reset the Intel graphics card settings to default.
 Posted by on 2018-11-18 at 16:52

USB tethering a OnePlus One phone to Windows XP

 Android, Windows  Comments Off on USB tethering a OnePlus One phone to Windows XP
Jun 102018
 

For whatever reason my old Windows XP netbook doesn’t connect to our holiday flat’s WIFI while my OnePlus One Android phone does. So I thought I’d simply tether it to the Netbook via USB to get around this problem. I tried that before with other phones and other computers and don’t remember ever having a problem. This time I got a prompt to install a driver for a rndis device, which failed because I had no Internet connection (It might also have failed if I had one but I couldn’t try.)

So I turned to Google and found multiple posts suggesting to download a tetherxp.inf file and simply use that to install the drivers which apparently are already available in a standard Windows XP installation.

I downloaded that file from one of the links, put it in an empty folder and tried to install it. No luck. It took me a while to find this post on quora, which contains an additional point:

4. Now this is where some of you will get lost, you need to open up the tetherxp.inf file with your favorite code editor (Start->Run->Wordpad). Create a new line below “[AndroidDevices.NT.5.1]” containing your Device Instance Id.

This turned out to be the important part: The tetherxp.inf file contained entries for several widely used phones, but of course not for my rather rare one, so I had to add two lines to it:

[AndroidDevices]
; OnePlus One without adb
%AndroidDevice%    = RNDIS, USB\VID_05C6&PID_676A

[AndroidDevices.NT.5.1]
; OnePlus One without adb
%AndroidDevice%    = RNDIS.NT.5.1, USB\VID_05C6&PID_676A

The part after “USB\” is taken from the details pane of the “rndis” device in the hardware manager.

After adding these two lines I switched back to the “Driver” tab and clicked “Install Driver”. In the following Wizard, I selected “No, not this time” -> “Next” -> “Install from a list or specific location” -> “Next” -> “Don’t search, I’ll choose the driver to install” -> “Next” -> “Have Disk” -> “Browse”. Then I selected the modified tetherxp.inf file and pressed “Open” and “OK” and “Next” again. I then had to tell Windows to ignore that the “Driver” was not digitally signed to finally really get it to install it.

Diesmal funktioniert alles. (Spliff, “Computer sind doof”).

 Posted by on 2018-06-10 at 21:55

VirtualBox and Windows 8.1: This 64-bit application couldn’t load because your PC doesn’t have a 64-bit processor

 Windows, Windows 8.1  Comments Off on VirtualBox and Windows 8.1: This 64-bit application couldn’t load because your PC doesn’t have a 64-bit processor
Aug 172017
 

I just moved a Windows 8.1 installation in Virtual Box from one computer to another. When booting up, Windows told me:

This 64-bit application couldn’t load because your PC doesn’t have a 64-bit processor

The host computer is an Intel Xeon CPU which definitely is a 64 bit CPU (the previous computer was an older AMD 6 core CPU which was also 64 bit).

Oddly enough I could not find any solution on the interweb tubes (my Google fu seems to have weakened or maybe Google search isn’t as helpful as it used to be because it tries to guess what the user is searching for rather than simply searching for what he has typed).

It took me a while to figure out what the problem was: For some reason the virtual machine’s configuration had changed on the “General” -> “Basic” page from Version = “Windows 8.1 (64-bit)” to “Windows 7 (32-bit)”. Which apparently means that the CPU reported to the OS is a 32 bit CPU. Changing this back to the original value solved the problem.

 Posted by on 2017-08-17 at 16:55

Adding a Windows 8.1 computer to a SAMBA domain

 Windows, Windows 8.1  Comments Off on Adding a Windows 8.1 computer to a SAMBA domain
Jun 262017
 

Note to self: If adding a Windows 8.1 computer to a SAMBA domain fails with the error “The specified domain either does not exist or could not be contacted” the following changes to the Registry might help:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanWorkstation\Parameters]
; Enable NT-Domain compatibility mode
; Default:
; [value not present]
; "DomainCompatibilityMode"=-
"DomainCompatibilityMode"=dword:00000001

; Disable required DNS name resolution
; Default:
; [value not present]
; "DNSNameResolutionRequired"=-
"DNSNameResolutionRequired"=dword:00000000


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Netlogon\Parameters]
; Disable requirement of signed communication
; My Samba (3.0.33) works with signed communication enabled, so no need to disable it.
; Default:
; "RequireSignOrSeal"=dword:00000001
; Disable the usage of strong keys
; Default:
; "RequireStrongKey"=dword:00000001
"RequireStrongKey"=dword:00000000

source: the answer from gigiga in the social.technet.microsoft.com forum.

 Posted by on 2017-06-26 at 12:13

SyncThing for Android

 Android, Windows  Comments Off on SyncThing for Android
May 282017
 

I blogged about SyncThing before, when BitTorrentSync started to annoy the hell out of me. SyncThing is an open source tool for synchronizing directory trees between different devices without requiring a cloud service (it needs a discovery server though in order to actually find these devices).

There is also an Android app for it as well as a tool called Anyplace Sync Browser that does not sync but allows you to selectively download files from SyncThing directories to your phone.

Unfortunately SyncThing is far from easy to install and configure. It seems easy when you read the documentation (OK, not easy, really, it’s too technical for the average user and is missing a lot of information for professionals) but if anything goes wrong, you are on your own. And something goes wrong every so often, especially when there is an update.

By default, it is a console program that runs in the background (daemon) and on Windows can be made into a service by using e.g. NSSM – the Non-Sucking Service Manager. Configuration is then done via a web interface provided by that program. But there are also native GUI front ends.

The Android app also comes with a UI, but that GUI is atrocious. I have rarely seen a tool with so confusing a UI.

On the bright side, there are programs for Windows, any flavor of Unix you can think of and the aforementioned Android App. When it works, it is great.

I use it for:

  • Sync photos from my phone one way to my desktop PC
  • Sync text files with notes and checklists both ways between my pone and my desktop PC

So, even though I think it is overly complicated, I still like the idea and am using it.

 Posted by on 2017-05-28 at 13:44

Creating a window without a title that can be moved with the mouse

 Delphi, Windows  Comments Off on Creating a window without a title that can be moved with the mouse
Mar 122017
 

For my dzComputerInfo tool I created a window without a title that can still be moved with the mouse. This is quite easy to do:

  1. To remove the title, set BorderStyle to bsNone.
  2. To let the user move it with the mouse, add the following message handler:
type
  TMyForm = class(TForm)
  private
    procedure WMNCHitTest(var Msg: TWMNcHitTest); message WM_NCHITTEST;
  end;

procedure TMyForm .WMNCHitTest(var Msg: TWMNcHitTest);
begin
  inherited;
  if (Msg.Result = htClient) then
    Msg.Result := htCaption;
end;

It tells Windows, that the user clicked on the title rather than the client area. Windows then does the rest, and the user can move the window with the mouse as if he clicked on the window title.

If you also want the window to have a context menu, you’ll have to change the message handler, so it does not affect right mouse clicks:

procedure TMyForm .WMNCHitTest(var Msg: TWMNcHitTest);
var
  Res: SmallInt;
begin
  inherited;
  Res := GetKeyState(VK_RBUTTON);
  if Res >= 0 then
    // only if the right mouse button was not pressed
    // (otherwise the popup menu wont show)
    if (Msg.Result = htClient) then
      Msg.Result := htCaption;
end;
 Posted by on 2017-03-12 at 19:37

Configuring FTDI USB serial converters

 Windows  Comments Off on Configuring FTDI USB serial converters
Mar 122017
 

USB serial converters from FTDI are quite popular. We also use them at work quite a lot because they do not have the problem of the competing products (like Prolific): Windows does not detect devices on them as Microsoft ball point devices.

These converters can be configured interactively using a dialog accessible from the hardware manager’s device property dialog, page “Port Settings” by pressing the “Advanced …” button.

There are various settings, the most common ones to change are

  • COM Port Number
  • BM Options: Latency Timer
  • Miscellaneous Options: Serial Enumerator

The first one is obvious: It sets the COM port number of the emulated serial port. Every converter ever connected to the computer will reserve one COM port, so if you attach many of them you will sooner or later get rather high port numbers which many tools cannot use. The workaround is to force the driver to use a particular COM port here.

The second one, Latency Timer is not that obvious: It sets the latency timer in milliseconds to be used when the data received is not large enough to fill the buffer. Reducing this value from the default 16 to e.g. 4 solves many problems where data is being received with a delay of several seconds (e.g. the GPS position displayed is lagging behind your vehicle position by several seconds, which results in several 10th of metres at higher velocities. I have seen 4 seconds which at 60 km/h equals about 80 metres.)

The last one, Serial Enumerator, solves the Microsoft Ball Point detection mentioned above. As long as it is checked and a device is attached that sends data, Windows might mistakenly think it’s a mouse and the mouse cursor will jump all around the screen and even randomly click everywhere. This is quite annoying when it happens (and it happens very often when you connect a GPS). To resolve the problem, uncheck this option.
(Btw: Microsoft Ball Point devices have not been in use for over a decade, but the bug is still present in Windows XP, 7 and 8/8.1. (don’t know about Windows 10) despite users having problems because of it for many years. Shame on you, Microsoft!)

 Posted by on 2017-03-12 at 19:35

dzEditorLineEndsFix 1.0.3 released

 Delphi, Windows, Windows 8.1  Comments Off on dzEditorLineEndsFix 1.0.3 released
Jan 212017
 

I have released a new version of my dzEditorLineEndsFix tool for Delphi 2006 to 2010. There is only one change: I removed the balloon hint it used to show at startup. It started to annoy the hell out of me (and I’m probably not the only one).

The tool also now has its own page on this blog.

 Posted by on 2017-01-21 at 13:11

Enable Hibernate on Windows 8.x

 Windows, Windows 8.1  Comments Off on Enable Hibernate on Windows 8.x
Jan 202017
 

Note to self:

If Hibernate is not available on the shutdown menu and doesn’t show up in the configuration either, it can be enabled via the command line:

powercfg -h on
 Posted by on 2017-01-20 at 19:14

Filter multiple criteria in Windows Explorer

 Windows, Windows 7, Windows 8.1  Comments Off on Filter multiple criteria in Windows Explorer
Nov 092016
 

Note to self: It is possible to filter on multiple criteria – e.g. extensions – in Windows Explorer by combining them with OR:

.txt OR .doc
  • The OR must be written all upper case (AND is also possible).
  • *.txt will not work
  • It will search recursively
  • A semicolon (as in file filters) does not work.

More on filtering, grouping and searching here.

 Posted by on 2016-11-09 at 12:01