1

Is there a way to change the language of the driver interface for Canon Pixma printers? Which language is used seems to be determined by the language of the OS or the Windows localization settings. I really don't want that, I want to be able to set the language manually to my own liking, either during the driver installation or afterwards.

(Update: It's not affected by the localization settings. The language is set during the driver installation.)

Change the UI language for Pixma IP2770

I have found a workaround for Pixma IP2770 where you edit the setup.ini file by replacing the language names and the DLL resource search paths with <SELECT> under the LANGUAGES section. So I thought I would share it with the rest of the community.

So instead of...

0000=<SELECT>
0001=Arabic,RES\STRING\IJInstAR.ini,RES\DLL\IJInstAR.dll
0804=Simplified Chinese,RES\STRING\IJInstCN.ini,RES\DLL\IJInstCN.dll
0404=Traditional Chinese,RES\STRING\IJInstTW.ini,RES\DLL\IJInstTW.dll
0005=Czech,RES\STRING\IJInstCZ.ini,RES\DLL\IJInstCZ.dll
0006=Danish,RES\STRING\IJInstDK.ini,RES\DLL\IJInstDK.dll
0007=German,RES\STRING\IJInstDE.ini,RES\DLL\IJInstDE.dll
0008=Greek,RES\STRING\IJInstGR.ini,RES\DLL\IJInstGR.dll
0009=English,RES\STRING\IJInstUS.ini,RES\DLL\IJInstUS.dll
000A=Spanish,RES\STRING\IJInstES.ini,RES\DLL\IJInstES.dll
000B=Finnish,RES\STRING\IJInstFI.ini,RES\DLL\IJInstFI.dll
000C=French,RES\STRING\IJInstFR.ini,RES\DLL\IJInstFR.dll
000E=Hungarian,RES\STRING\IJInstHU.ini,RES\DLL\IJInstHU.dll
0010=Italian,RES\STRING\IJInstIT.ini,RES\DLL\IJInstIT.dll
0011=Japanese,RES\STRING\IJInstJP.ini,RES\DLL\IJInstJP.dll
0012=Korean,RES\STRING\IJInstKR.ini,RES\DLL\IJInstKR.dll
0013=Dutch,RES\STRING\IJInstNL.ini,RES\DLL\IJInstNL.dll
0014=Norwegian,RES\STRING\IJInstNO.ini,RES\DLL\IJInstNO.dll
0015=Polish,RES\STRING\IJInstPL.ini,RES\DLL\IJInstPL.dll
0016=Portuguese,RES\STRING\IJInstPT.ini,RES\DLL\IJInstPT.dll
0019=Russian,RES\STRING\IJInstRU.ini,RES\DLL\IJInstRU.dll
001D=Swedish,RES\STRING\IJInstSE.ini,RES\DLL\IJInstSE.dll
001E=Thai,RES\STRING\IJInstTH.ini,RES\DLL\IJInstTH.dll
001F=Turkish,RES\STRING\IJInstTR.ini,RES\DLL\IJInstTR.dll
0021=Indonesian,RES\STRING\IJInstID.ini,RES\DLL\IJInstID.dll

You get....

0000=<SELECT>
0001=<SELECT>
0804=<SELECT>
0404=<SELECT>
0005=<SELECT>
0006=<SELECT>
0007=<SELECT>
0008=<SELECT>
0009=English,RES\STRING\IJInstUS.ini,RES\DLL\IJInstUS.dll
000A=<SELECT>
000B=<SELECT>
000C=<SELECT>
000E=<SELECT>
0010=<SELECT>
0011=<SELECT>
0012=<SELECT>
0013=<SELECT>
0014=<SELECT>
0015=<SELECT>
0016=<SELECT>
0019=<SELECT>
001D=<SELECT>
001E=<SELECT>
001F=<SELECT>
0021=<SELECT>

.... in case English is the preferred language. (Update: And you are installing the driver from a Windows language version that matches any of the SELECT languages above.)

This is a way to force the installation program to prompt you to choose a language during the installation process.

By putting <SELECT> in place of the language name and its DLL resource you are in fact telling the installation program what languages you don't want to see in the list when it prompts you to choose a language. So you are not SELECTING what you want to see, you are selecting what you don't want to see. What is left is what you would actually see in the list. In the example above it's English only. And since this is just one language it should be smart enough to not even prompt you to pick a language.

Note: If you are running the driver installation program from an English version of Windows, and English is the preferred language you want to install, then you don't have to do any of this, English will be selected automatically by the installation process.

But if you are like me and you are running the driver installation program from a Swedish version of Windows, or German version of Windows, or Czech version of Windows, or whatever the language version... then you need to put the <SELECT> value in place of that language, the language you want to avoid installing for.

It's enough to only put the <SELECT> value in place of the language you want to avoid. The effect is that the language will not show up in the list of languages when the install program prompts you to pick a language. But note that in order to get the prompt for language you need to put the <SELECT> value in place of the language line that is in fact the language of the Windows you are running the install from.

Example You run the install program from Danish Windows. If you leave it as is...

0005=Czech,RES\STRING\IJInstCZ.ini,RES\DLL\IJInstCZ.dll
0006=Danish,RES\STRING\IJInstDK.ini,RES\DLL\IJInstDK.dll
0007=German,RES\STRING\IJInstDE.ini,RES\DLL\IJInstDE.dll
0008=Greek,RES\STRING\IJInstGR.ini,RES\DLL\IJInstGR.dll
0009=English,RES\STRING\IJInstUS.ini,RES\DLL\IJInstUS.dll

... it will install Danish language, because it detects that you are running Danish Windows.

So if you change to...

0005=Czech,RES\STRING\IJInstCZ.ini,RES\DLL\IJInstCZ.dll
0006=<SELECT>
0007=German,RES\STRING\IJInstDE.ini,RES\DLL\IJInstDE.dll
0008=Greek,RES\STRING\IJInstGR.ini,RES\DLL\IJInstGR.dll
0009=English,RES\STRING\IJInstUS.ini,RES\DLL\IJInstUS.dll

.... it will ask you if you want to install with Czech, German, Greek or English. So you see, no need to set <SELECT> for all languages except for the one in which your Windows is in.

If you change to...

0005=Czech,RES\STRING\IJInstCZ.ini,RES\DLL\IJInstCZ.dll
0006=<SELECT>
0007=<SELECT>
0008=Greek,RES\STRING\IJInstGR.ini,RES\DLL\IJInstGR.dll
0009=<SELECT>

... it will ask you to install with either Czech or with Greek language. So you see, this way you remove German and English from the list of options.

Note 2: Make sure there is a DLL file for the language you intend to install with, it should be located at ..\RES\STRING\.

IP2770 is a model for the Asian market, so if you want to check this out you need to go to the Canon India download page (for instance) to get the driver.

Unfortunately this method is not possible with my IP4000. There is no driver even available for it to download for Windows Vista.

But is there really no NORMAL way of changing the language of the UI, you know... without having to hack the damn thing? I really hate stupid programs like this.

Besides, the driver for my printer comes with Windows Vista, so I don't even have to install any drivers. And little do I get the chance to set the language, knowing that the driver installation never happens. Vista automatically configures the driver for the printer as soon as I connect it and power it on.

Does anyone here know how to work around this fanatical limitation of the Canon Pixma driver?... anyone?...

4
  • 1
    For my Canon "CanoScan LiDE 100" scanner driver I have overwritten language resource DLL like this: move C:\Windows\twain_32\CNQ2413\SGRES_DE.DLL C:\Windows\twain_32\CNQ2413\SGRES_DE.DLL.old && copy C:\Windows\twain_32\CNQ2413\SGRES_US.DLL C:\Windows\twain_32\CNQ2413\SGRES_DE.DLL. Just in case it helps someone.
    – dma_k
    Nov 4, 2020 at 11:06
  • In this case it replaces German with English? Nice! That should work I think. I still have an old LiDE 60 that I don't use, barely used, it just sits in its original box. Not sure if it works in Windows 10 but I might give it a try one day. But how about that Windows and its localization of software... what a mess, right? They didn't even get it right with Windows 10, or especially with Windows 10 I should say. There is one language for "modern" apps, and "date format" is controlling your currency in Store app, and you add "language" to add a keyboard layout... complete rubbish, to be honest.
    – Samir
    Nov 17, 2020 at 22:41
  • Yes, it overwrites German resources with English and that does a trick. The driver actually displays the scan dialog in a language of Windows 10 installation, and not in a language I have chosen for localization.
    – dma_k
    Nov 18, 2020 at 7:52
  • So if Windows 10 installation is localized to German, then the Canon scan dialog is still in German? But then what parts are in English?
    – Samir
    Nov 19, 2020 at 8:57

0

You must log in to answer this question.

Browse other questions tagged .