N-Trig Surface devices wintab driver dependencies (C++ Runtime 2010)
Closed, DuplicatePublic

Description

The N-Trig wintab driver for Surface Pro 3 / Surface 3 / Surface Pro 4 / Surface Book / Surface Pro (2017) depends on the Visual C++ 2010 Runtime but the installer doesn't ship with it.

Visual C++ 2010 SP1 Redistributable
x86: https://www.microsoft.com/en-us/download/details.aspx?id=8328
x64: https://www.microsoft.com/en-us/download/details.aspx?id=13523

(The driver is Wintab_x**_1.0.0.20.zip as available on https://www.microsoft.com/en-us/download/details.aspx?id=49498 which seems to be the same one for all the specified devices.)

There are several ways to do this:

  1. Install the redistributable from the installer unconditionally
    • It technically doesn't matter because it might be needed by other software anyway, and having it installed does not affect the basic functions of Krita at all. But it increases the installation time and it can be considered unwanted crap to some users (it's possible that nothing depends on it on their system).
  2. Check whether that specific wintab32.dll is present on the system (by checksum)
    • I don't expect Microsoft to update the driver, but if they do we can always add the checksum of the new version...
    • It would also require the driver to already be present on the system before installing Krita.
  3. Check for the device type
    • Might be difficult and unreliable
    • The plus side is we can also ask the user to install the wintab driver if it's not available.
  4. Ask the user for the device type
    • Requires user interaction

On installing the redistributable:

  1. We can include the redistributable installer. I think it is permitted.
  2. We can download the redistributable within the installer. The installer should check the checksum.
  3. We can ask the user to install it themself... but this is kind of pointless.

Actually, we can also simply include msvcp100.dll and msvcr100.dll alongside with Krita and it should make the driver work (thanks to DLL search path behaviour).

alvinhochun lowered the priority of this task from Normal to Low.Aug 17 2017, 1:32 PM

Not really needed now that we have some form of Windows Ink support.