как переписать .inf файл драйвера принтера под Windows 7 x64
От: SPYTNIK444  
Дата: 24.10.23 20:00
Оценка:
Есть драйвер для принтера на x32 битные системы. Нужно подключить принтер к x64 системе.
Попробовал переписать драйвер для x64, но при установке система всё равно ругается.
В чём может быть проблема?

Вот исходный:

; Canon Advanced Printing Technology 
; Printer INF for Windows 2000/XP/Vista
; Copyright CANON INC. 1998-2007 All Rights Reserved
; CAP3SETK.INF

[Version]
Signature="$Windows NT$"
Provider=%CANON%
ClassGUID={4D36E979-E325-11CE-BFC1-08002BE10318}
Class=Printer
DriverVer=02/05/2007,1.10.0.009
CatalogFile=CAP3SETK.CAT

[ClassInstall32.NT]
AddReg=printer_class_addreg

[printer_class_addreg]
HKR,,,,%PrinterClassName%
HKR,,Icon,,"-4"
HKR,,Installer32,,"ntprint.dll,ClassInstall32"
HKR,,NoDisplayClass,,1
HKR,,EnumPropPages32,,"printui.dll,PrinterPropPageProvider"

[Manufacturer]
%CANON%=CANON

;Windows2000/XP/Vista
[Canon]
%DEVICE% = CAP3.NTx86,USBPRINT\CanonLASER_SHOT_LBP-91D2,Canon_LASER_SHOT_LBP-1120

[CAP3.NTx86]
CopyFiles=CAP3_SYS_FILES,CAP3_ALL_FILES
DataFile=CAP3K.DLL
DataSection=CAP3_DATA

[CAP3_DATA]
DriverFile  = CAP3K.DLL
ConfigFile  = CAP3UIK.DLL
HelpFile    = CAP3.HLP
LanguageMonitor=%CAP3_LMON_NT%

[CAP3_SYS_FILES]
CAP3SMK.DLL,,,0x00000020
CAP3LMK.DLL,,,0x00000020
CAP3RSK.EXE,,,0x00000020
CAP3EMN.DLL,,,0x00000020
CAP3PTMN.DLL,,,0x00000020

[CAP3_ALL_FILES]
CAP3SETK.DLL
CAP3UNIK.EXE
CAP3SMK.DLL
CAP3LMK.DLL
CAP3RSK.EXE
CAP3EMN.DLL
CAP3PTMN.DLL
CAP3LAK.EXE
CAP3SWK.EXE
CAP3PMN.DLL
CAP3RDN.DLL
CAP3HT.BIN
CAP3K.DLL
CAP3UIK.DLL
CAP3APPN.DAT
CAP3INFK.DAT
CAP3.HLP
CAP3.CNT
CAP3ONN.EXE
CAP3ZWAV.BIN

[OEM URLS]
"Canon" = "http://www.canon.com/support"

[DestinationDirs]
DefaultDestDir=66000
CAP3_SYS_FILES=66002

[SourceDisksNames]
1 = %FD1%,,,
2 = %FD2%,,,

[SourceDisksFiles]
CAP3INFK.DAT  = 1
CAP3APPN.DAT  = 1
CAP3SETK.DLL  = 1
CAP3UNIK.EXE  = 1
CAP3SMK.DLL   = 1
CAP3LMK.DLL   = 1
CAP3RSK.EXE   = 1
CAP3EMN.DLL   = 1
CAP3PTMN.DLL  = 1
CAP3LAK.EXE   = 1
CAP3SWK.EXE   = 1
CAP3PMN.DLL   = 1
CAP3RDN.DLL   = 1
CAP3HT.BIN    = 1
CAP3K.DLL     = 1
CAP3UIK.DLL   = 1
CAP3.HLP      = 1
CAP3.CNT      = 1
CAP3ONN.EXE   = 1
CAP3ZWAV.BIN  = 2

[Strings]
CANON             = "Canon"
PrinterClassName  = "Printer"
DEVICE            = "Canon LASER SHOT LBP-1120"
CAP3_LMON_NT      = "CAP3 Monitor,CAP3LMK.DLL"
FD1               = "Установочная дискета 1 Canon LASER SHOT LBP-1120 (Windows Vista)"
FD2               = "Установочная дискета 2 Canon LASER SHOT LBP-1120 (Windows Vista)"


Вот что я сделал:

; Canon Advanced Printing Technology 
; Printer INF for Windows 2000/XP/Vista
; Copyright CANON INC. 1998-2007 All Rights Reserved
; CAP3SETK.INF

[Version]
Signature="$Windows NT$"
Provider=%CANON%
ClassGUID={4D36E979-E325-11CE-BFC1-08002BE10318}
Class=Printer
CatalogFile=CAP3SETK.CAT

[ClassInstall32]
AddReg=printer_class_addreg

[ClassInstall64]
AddReg=printer_class_addreg

[printer_class_addreg]
HKR,,,,%PrinterClassName%
HKR,,Icon,,"-4"
HKR,,Installer32,,"ntprint.dll,ClassInstall32"
HKR,,Installer64,,"ntprint.dll,ClassInstall64"
HKR,,NoDisplayClass,,1
HKR,,EnumPropPages32,,"printui.dll,PrinterPropPageProvider"

[Manufacturer]
%CANON%=CANON, NTx86, NTamd64

;Windows2000/XP/Vista
[Canon.NTx86]
%DEVICE% = CAP3.NTx86,USBPRINT\CanonLASER_SHOT_LBP-91D2,Canon_LASER_SHOT_LBP-1120

;Win7 x64
[Canon.NTx64]
%DEVICE% = CAP3.NTx64,USBPRINT\CanonLASER_SHOT_LBP-91D2,Canon_LASER_SHOT_LBP-1120

[CAP3.NTx86]
DriverVer=02/05/2007,1.10.0.009
CopyFiles=CAP3_SYS_FILES,CAP3_ALL_FILES
DataFile=CAP3K.DLL
DataSection=CAP3_DATA

[CAP3.NTamd64]
DriverVer=02/05/2007,1.10.0.009
CopyFiles=CAP3_SYS_FILES,CAP3_ALL_FILES
DataFile=CAP3K.DLL
DataSection=CAP3_DATA

[CAP3_DATA]
DriverFile  = CAP3K.DLL
ConfigFile  = CAP3UIK.DLL
HelpFile    = CAP3.HLP
LanguageMonitor=%CAP3_LMON_NT%

[CAP3_SYS_FILES]
CAP3SMK.DLL,,,0x00000020
CAP3LMK.DLL,,,0x00000020
CAP3RSK.EXE,,,0x00000020
CAP3EMN.DLL,,,0x00000020
CAP3PTMN.DLL,,,0x00000020

[CAP3_ALL_FILES]
CAP3SETK.DLL
CAP3UNIK.EXE
CAP3SMK.DLL
CAP3LMK.DLL
CAP3RSK.EXE
CAP3EMN.DLL
CAP3PTMN.DLL
CAP3LAK.EXE
CAP3SWK.EXE
CAP3PMN.DLL
CAP3RDN.DLL
CAP3HT.BIN
CAP3K.DLL
CAP3UIK.DLL
CAP3APPN.DAT
CAP3INFK.DAT
CAP3.HLP
CAP3.CNT
CAP3ONN.EXE
CAP3ZWAV.BIN

[OEM URLS]
"Canon" = "http://www.canon.com/support"

[DestinationDirs]
DefaultDestDir=66000
CAP3_SYS_FILES=66002

[SourceDisksNames]
1 = %FD1%,,,
2 = %FD2%,,,

[SourceDisksFiles]
CAP3INFK.DAT  = 1
CAP3APPN.DAT  = 1
CAP3SETK.DLL  = 1
CAP3UNIK.EXE  = 1
CAP3SMK.DLL   = 1
CAP3LMK.DLL   = 1
CAP3RSK.EXE   = 1
CAP3EMN.DLL   = 1
CAP3PTMN.DLL  = 1
CAP3LAK.EXE   = 1
CAP3SWK.EXE   = 1
CAP3PMN.DLL   = 1
CAP3RDN.DLL   = 1
CAP3HT.BIN    = 1
CAP3K.DLL     = 1
CAP3UIK.DLL   = 1
CAP3.HLP      = 1
CAP3.CNT      = 1
CAP3ONN.EXE   = 1
CAP3ZWAV.BIN  = 2

[Strings]
CANON             = "Canon"
PrinterClassName  = "Printer"
DEVICE            = "Canon LASER SHOT LBP-1120"
CAP3_LMON_NT      = "CAP3 Monitor,CAP3LMK.DLL"
FD1               = "Установочная дискета 1 Canon LASER SHOT LBP-1120 (Windows Vista)"
FD2               = "Установочная дискета 2 Canon LASER SHOT LBP-1120 (Windows Vista)"


Подскажите, если что не так. В первый раз этим занимаюсь. Может надо было для каждой битности каждый inf?
Буду признательно благодарен!
Re: как переписать .inf файл драйвера принтера под Windows 7 x64
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 24.10.23 20:56
Оценка: 3 (1) +1
Здравствуйте, SPYTNIK444, Вы писали:

По этой фразе:

SPY>при установке система всё равно ругается.


Каждый сразу поймет,

SPY>В чём может быть проблема?




SPY>Подскажите, если что не так.


Проверьте с помощью infverif, оно и скажет, что не так.

SPY>Может надо было для каждой битности каждый inf?


Нет, достаточно одного.
Re: как переписать .inf файл драйвера принтера под Windows 7 x64
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 24.10.23 21:19
Оценка: +2
Здравствуйте, SPYTNIK444, Вы писали:

SPY>Есть драйвер для принтера на x32 битные системы. Нужно подключить принтер к x64 системе.

SPY>Попробовал переписать драйвер для x64, но при установке система всё равно ругается.
SPY>В чём может быть проблема?

SPY>Вот исходный:


Там какие-то DLL фигурируют. Почему ты решил, что достаточно переписать только inf-файл?
Маньяк Робокряк колесит по городу
Re[2]: как переписать .inf файл драйвера принтера под Windows 7 x64
От: flаt  
Дата: 25.10.23 08:04
Оценка:
Здравствуйте, Marty, Вы писали:

M>Там какие-то DLL фигурируют. Почему ты решил, что достаточно переписать только inf-файл?


Вроде бы драйвера принтера могут быть в юзермоде, и вроде бы Windows поддерживала такие даже в х64 системе.
Re[3]: как переписать .inf файл драйвера принтера под Windows 7 x64
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 25.10.23 08:17
Оценка: +2
Здравствуйте, flаt, Вы писали:

F>Вроде бы драйвера принтера могут быть в юзермоде


Могут-то могут, но, если процесс, загружающий эти DLL, существует только в 64-разрядном виде, то 32-разрядную DLL он загрузить не сможет.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.