PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu INF-Datei


Panasonic
2009-01-27, 06:11:18
Hallo, ich versuche verzweifelt, meinen alten HP-SCSI Scanner zu installieren. Leider gibt es keine Windows XP x64 Treiber. Aber ich habe jetzt eine Frage. Wenn ich die INF-Datei manuell auswähle, weiß mein OS, dass diese nicht für 64 Bit geeignet ist und verweigert die Annahme. Ich habe mir die Datei angeschaut und kapiere nicht, woher Windows die Info bezieht (und wie ich diese Info verbergen kann ;) ). Weiß das jemand?




; SCANJET.INF -- Windows Still Image Setup File
; Copyright (c) 1997 Microsoft Corporation
; Manufacturer: Hewlett-Packard Co.

[Version]
CatalogFile=hpscan.cat
LayoutFile=Layout.inf, Layout1.inf, Layout2.inf
Signature="$CHICAGO$"
Class=Image
ClassGUID={6bdd1fc6-810f-11d0-bec7-08002be2092f}
Provider=%Msft%
VendorSetup="reg32.dll,UpdateSourcePath"
[ControlFlags]
ExcludeFromSelect=*

[DestinationDirs]
DefaultDestDir=11 ; LDID_SYS
Scsi.Scanner.CopySys32Files=10,system32\drivers ; LDID_WIN
Usb.Scanner.CopySys32Files=10,system32\drivers ; LDID_WIN
Scsi.Scanner.DelWinFiles=10 ; LDID_WIN
Scsi.Scanner.DelIOSFiles=12

[Manufacturer]
%Mfg%=Models

[Models]
%SCSI\HP______C5110A__________3.DeviceDesc% = C5110A.Scanner,HP______C5110A__________3
%SCSI\HP______C2520A__________3.DeviceDesc% = C2520A.Scanner,HP______C2520A__________3
%SCSI\HP______C1130A__________3.DeviceDesc% = C1130A.Scanner,HP______C1130A__________3
%SCSI\HP______C2570A__________3.DeviceDesc% = C2570A.Scanner,HP______C2570A__________3
%SCSI\HP______C2500A__________3.DeviceDesc% = C2500A.Scanner,HP______C2500A__________3
%SCSI\HP______C1790A__________3.DeviceDesc% = C1790A.Scanner,HP______C1790A__________3
%SCSI\HP______C1750A__________3.DeviceDesc% = C1750A.Scanner,HP______C1750A__________3
%SCSI\HP______C5190A__________3.DeviceDesc% = C5190A.Scanner,HP______C5190A__________3

[C5190A.Scanner]
SubClass=StillImage
DeviceType=1
Capabilities=3
Events=C5190A.Events
DeviceData=C5190A.DeviceData
AddReg=Scanner.AddReg,Scsi.Scanner.AddReg
CopyFiles=Scanner.CopyFiles,Scsi.Scanner.CopySys32Files
UpdateInis=Scanner.CleanIni
DelFiles=Scsi.Scanner.DelSysFiles,Scsi.Scanner.DelIOSFiles
DelReg=Scanner.DelReg
PropertyPages="hpscnmgr.dll,EnumStiPropPages"
DeviceSubType=0x0101
VendorSetup="reg32.dll,UpdateButtonSupport"
ICMProfiles="sRGB Color Space Profile.icm"

[C5190A.DeviceData]
TwainDS="HP PrecisionScan 1.0"
Model=C5190A

[C5190A.Events]
GreenButton=%GreenButton%,{AD879F40-0982-11d1-A43B-080009EEBDF6},HP PrecisionScan

[C5110A.Scanner]
SubClass=StillImage
DeviceType=1
Capabilities=3
Events=C5110A.Events
DeviceData=C5110A.DeviceData
AddReg=Scanner.AddReg,Scsi.Scanner.AddReg
CopyFiles=Scanner.CopyFiles,Scsi.Scanner.CopySys32Files
UpdateInis=Scanner.CleanIni
DelFiles=Scanner.DelSysFiles,Scsi.Scanner.DelSysFiles,Scsi.Scanner.DelIOSFiles
DelReg=Scanner.DelReg
PropertyPages="hpscnmgr.dll,EnumStiPropPages"
DeviceSubType=0x0101
VendorSetup="reg32.dll,UpdateButtonSupport"
ICMProfiles="sRGB Color Space Profile.icm"

[C5110A.DeviceData]
TwainDS="DeskScan II 2.9"
Model=C5110A

[C5110A.Events]
GreenButton=%GreenButton%,{AD879F40-0982-11d1-A43B-080009EEBDF6},DeskScan II 2.9

[C2520A.Scanner]
SubClass=StillImage
DeviceType=1
AddReg=Scanner.AddReg,Scsi.Scanner.AddReg
CopyFiles=Scanner.CopyFiles,Scsi.Scanner.CopySys32Files
UpdateInis=Scanner.CleanIni
DelFiles=Scanner.DelSysFiles,Scsi.Scanner.DelSysFiles,Scsi.Scanner.DelIOSFiles
DelReg=Scanner.DelReg
PropertyPages="hpscnmgr.dll,EnumStiPropPages"
DeviceData=C2520A.DeviceData
DeviceSubType=0x0103
ICMProfiles="sRGB Color Space Profile.icm"

[C2520A.DeviceData]
Model=C2520A

[C1130A.Scanner]
SubClass=StillImage
DeviceType=1
AddReg=Scanner.AddReg,Scsi.Scanner.AddReg
CopyFiles=Scanner.CopyFiles,Scsi.Scanner.CopySys32Files
UpdateInis=Scanner.CleanIni
DelFiles=Scanner.DelSysFiles,Scsi.Scanner.DelSysFiles,Scsi.Scanner.DelIOSFiles
DelReg=Scanner.DelReg
PropertyPages="hpscnmgr.dll,EnumStiPropPages"
DeviceData=C1130A.DeviceData
DeviceSubType=0x0101
ICMProfiles="sRGB Color Space Profile.icm"

[C1130A.DeviceData]
Model=C1130A

[C2570A.Scanner]
SubClass=StillImage
DeviceType=1
AddReg=Scanner.AddReg,Scsi.Scanner.AddReg
CopyFiles=Scanner.CopyFiles,Scsi.Scanner.CopySys32Files
UpdateInis=Scanner.CleanIni
DelFiles=Scanner.DelSysFiles,Scsi.Scanner.DelSysFiles,Scsi.Scanner.DelIOSFiles
DelReg=Scanner.DelReg
PropertyPages="hpscnmgr.dll,EnumStiPropPages"
DeviceData=C2570A.DeviceData
DeviceSubType=0x0101
ICMProfiles="sRGB Color Space Profile.icm"

[C2570A.DeviceData]
Model=C2570A

[C2500A.Scanner]
SubClass=StillImage
DeviceType=1
AddReg=Scanner.AddReg,Scsi.Scanner.AddReg
CopyFiles=Scanner.CopyFiles,Scsi.Scanner.CopySys32Files
UpdateInis=Scanner.CleanIni
DelFiles=Scanner.DelSysFiles,Scsi.Scanner.DelSysFiles,Scsi.Scanner.DelIOSFiles
DelReg=Scanner.DelReg
PropertyPages="hpscnmgr.dll,EnumStiPropPages"
DeviceData=C2500A.DeviceData
DeviceSubType=0x0103
ICMProfiles="sRGB Color Space Profile.icm"

[C2500A.DeviceData]
Model=C2500A

[C1790A.Scanner]
SubClass=StillImage
DeviceType=1
AddReg=Scanner.AddReg,Scsi.Scanner.AddReg
CopyFiles=Scanner.CopyFiles,Scsi.Scanner.CopySys32Files
UpdateInis=Scanner.CleanIni
DelFiles=Scanner.DelSysFiles,Scsi.Scanner.DelSysFiles,Scsi.Scanner.DelIOSFiles
DelReg=Scanner.DelReg
PropertyPages="hpscnmgr.dll,EnumStiPropPages"
DeviceData=C1790A.DeviceData
DeviceSubType=0x0101
ICMProfiles="sRGB Color Space Profile.icm"

[C1790A.DeviceData]
Model=C1790A

[C1750A.Scanner]
SubClass=StillImage
DeviceType=1
AddReg=Scanner.AddReg,Scsi.Scanner.AddReg
CopyFiles=Scanner.CopyFiles,Scsi.Scanner.CopyFiles
UpdateInis=Scanner.CleanIni
DelFiles=Scanner.DelSysFiles,Scsi.Scanner.DelSysFiles,Scsi.Scanner.DelIOSFiles
DelReg=Scanner.DelReg
PropertyPages="hpscnmgr.dll,EnumStiPropPages"
DeviceData=C1750A.DeviceData
DeviceSubType=0x0101
VendorSetup="reg32.dll,UpdateButtonSupport"
ICMProfiles="sRGB Color Space Profile.icm"

[C1750A.DeviceData]
Model=C1750A

[Scanner.AddReg]
HKR,,HardwareConfig,1,2
HKR,,DevLoader,,*NTKERN
HKR,,USDClass,,"{E9FA3320-7F3F-11D0-90EA-00AA0060F86C}"
HKCR,CLSID\{E9FA3320-7F3F-11D0-90EA-00AA0060F86C},,,"Hewlett Packard USD"
HKCR,CLSID\{E9FA3320-7F3F-11D0-90EA-00AA0060F86C}\InProcServer32,,,%11%\hpsjusd.dll
HKCR,CLSID\{E9FA3320-7F3F-11D0-90EA-00AA0060F86C}\InProcServer32,ThreadingModel,,"Apartment"
HKLM,System\CurrentControlSet\Services\Class\HpScanJetScanner,NoUseClass,,1
HKLM,System\CurrentControlSet\Services\VxD\Hpsjvxd,StaticVxD,,Hpsjvxd.vxd
HKLM,System\CurrentControlSet\Services\VxD\Hpsjvxd,Start,1,00
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Run,HPSCANMonitor,,%11%\hpsjvxd.e xe

[Scsi.Scanner.AddReg]
HKR,,NTMPDriver,,"scsimap.sys,scsiscan.sys"

[Usb.Scanner.AddReg]
HKR,,NTMPDriver,,"usbscan.sys"

[Scanner.CopyFiles]
hpsjrreg.exe
hpsjvxd.exe
hpsjvxd.vxd
hpsjusd.dll

[Scsi.Scanner.CopySys32Files]
scsiscan.sys
scsimap.sys

[Usb.Scanner.CopySys32Files]
usbscan.sys

[Scanner.CleanIni]
control.ini,MMCPL,"ScanJet=hpscnmgr.dll",,0

[Scanner.DelSysFiles]
hpsjclas.dll,,,1

[Scsi.Scanner.DelSysFiles]
vhpscand.vxd,,,1

[Usb.Scanner.DelSysFiles]
hpsjusb.sys,,,1

[Scsi.Scanner.DelIOSFiles]
vhpscand.vxd,,,1

[Scanner.DelReg]
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Run,hpsjbmgr

[Strings]
Msft="Microsoft"
Mfg="Hewlett-Packard"
SCSI\HP______C5110A__________3.DeviceDesc = "Hewlett-Packard ScanJet 5p"
SCSI\HP______C2520A__________3.DeviceDesc = "Hewlett-Packard ScanJet 6100C"
SCSI\HP______C1130A__________3.DeviceDesc = "Hewlett-Packard ScanJet 4p"
SCSI\HP______C2570A__________3.DeviceDesc = "Hewlett-Packard ScanJet 3p"
SCSI\HP______C2500A__________3.DeviceDesc = "Hewlett-Packard ScanJet IIcx"
SCSI\HP______C1790A__________3.DeviceDesc = "Hewlett-Packard ScanJet IIp"
SCSI\HP______C1750A__________3.DeviceDesc = "Hewlett-Packard ScanJet IIc"
SCSI\HP______C5190A__________3.DeviceDesc = "Hewlett-Packard ScanJet 5100C"
GreenButton="Green Scan Button Press"


Gibt es überhaupt eine realistische Chance, die so umzustricken, dass sie auch unter x64 angenommen wird (vom Ergebnis mal abgesehen)?

Monger
2009-01-27, 08:42:36
Wahrscheinlich nicht.

Die INF Datei ist ja nur die halbe Miete. Das hier z.B.

ClassGUID={6bdd1fc6-810f-11d0-bec7-08002be2092f}

ist der Fingerabdruck einer bestimmten Klasse, vermutlich einer DLL. Sprich: durchaus möglich, dass Windows an der Stelle gleich mal die DLL anzieht, und im Manifest nachguckt was denn da drin steckt. Wenn es sich als nicht x64 kompatibel erweist, wird vermutlich bereits an der Stelle bereits abgebrochen.

Entscheidend ist nunmal nicht, wie du den Treiber aufsetzst, sondern dass der Treiber passt.

Panasonic
2009-01-27, 08:57:11
Danke. Das Thema scheint doch komplexer zu sein. Ich werde wohl WIndows 98 SE in einer VM nutzen müssen, um den Scanner zu benutzen. Ich ärgere mich ein wenig, da hat man zwar recht alte, aber doch hochwertige Hardware, die einwandfrei funktioniert, aber es werden eifnach keine aktuellen Treiber mehr geschrieben :(

Monger
2009-01-27, 09:02:48
Schreib eine Mail an deinen Hersteller, und sei nicht allzu freundlich.

Diese Sauerei haben jede Menge Firmen durchgezogen, insbesondere bei Scannern und Druckern. Da wurde dann hinten am Modell einfach eine Ziffer geändert, ein "Vista-kompatibel" Logo draufgeklebt, und dann einfach nochmal an den Kunden verkauft.
Technisch gesehen dürfte es überhaupt kein Aufwand sein, auch für die älteren Modelle Treiber zu schreiben. Aber dann hätten sie ja eine einmalige Chance verpasst, den Kunden zu melken.

Meine Empfehlung: künftig solche Hersteller boykottieren.

DocEW
2009-01-27, 09:07:31
Signature="$CHICAGO$"
Das hier ist zumindest der Codename für Windows 95.
Allerdings reicht es bestimmt nicht, einfach nur diese Zeile zu entfernen... ich schätze mal, dass sich das Treibermodell schon ein bisschen unterschiedet. ;)

Panasonic
2009-01-27, 09:28:02
Ich habe mich auch gewundert, aber es ist tatsächlich so, dass es einen Treiber für 95, 98, NT4.0, 2000 und XP gibt :D

stickedy
2009-01-27, 09:47:01
Nun ja, 64 Bit ist schon eine andere Geschichte. Es muss ein richtiger 64 Bit-Treiber sein, also neu kompiliert und angepasst. Dazu müsste man Arbeit investieren, was viele Hersteller älterer Hardware nicht tun (dazu siehe die Ausführungen von Monger).

Das Treibermodell unterscheidet sich zwischen NT 4 und Vista quasi nicht (außer Grafiktreiber und Sound/Video!), so dass so ziemlich jeder Treiber für Peripherie, der für NT 4 geschrieben ist, auch unter Vista noch läuft (32 Bit natürlich). Bei Windows 9x gilt das von 95 bis ME... Deswegen ist es auch recht einfach einen "one fits all" anzubieten. Letzlich sind das ein 9x-Treiber und ein NT-Treiber in einem Package...

Panasonic
2009-01-27, 09:51:40
Wie aufwendig kann es sein, einen x64 Treiber für einen SCSI-Scanner zu schreiben? Ich meine das ernst, kann das jemand überblicken?

Und auf der anderen Seite konnte ich meinen Adaptec AHA-2940 (ich betreibe daran meinen Scanner :D ) einfach reinstecken und XP x64 hat das Ding sofort erkannt und als einsatzbereit gemeldet :( Und der ist auch nicht jünger als mein geliebter Scanner... ich mag das nicht wegwerfen.

stickedy
2009-01-27, 10:13:05
Sagen wir es mal so: Es hält sich wirklich in Grenzen! Es ist schlicht das Nicht-Wollen des Herstellers... Es kostet halt Geld, weil sich mindestens ein Entwickler mit den alten Geräten beschäftigen muss und je nachdem wie toll die sind, kann das halt schon viel Zeit in Anspruch nehmen.

Bei Adaptec ist das was anderes: Deren Geräte kommen besonders oft in Servern zum Einsatz, deswegen ist da eine gute Treiber-Unterstützung + 64-Bit-Support Pflicht.

Es ist halt einfach ärgerlich. Ich mein, ich kanns ja nachvollziehen: Hätte ich vor 10 Jahren einen Scanner entwickelt und verkauft, dann möcht eich jetzt auch keinen neuen Treiber mehr dafür schreiben :) Aber dann sollen die Firma bitteschön entsprechende Dokumentation frei geben, so dass man sich - entsprechende Programmierfähigkeiten vorausgesetzt - im Zweifel selbst behelfen kann...

Panasonic
2009-01-27, 10:18:49
Es ist halt einfach ärgerlich. Ich mein, ich kanns ja nachvollziehen: Hätte ich vor 10 Jahren einen Scanner entwickelt und verkauft, dann möcht eich jetzt auch keinen neuen Treiber mehr dafür schreiben :).Hihi, dann soll HP einfach mal wieder einen Scanner in der Qualität wie vor 10 Jahren bauen :)

Sephiroth
2009-01-27, 21:32:56
Die GUID hat wenig damit zu tun. Alles was fehlt ist, von den 64-Bit Dateien mal abgesehen, folgende kleine Ergänzung inkl. dem zugehörigen Abschnitt in der inf Datei.

[Manufacturer]
%Mfg%=Models,NTamd64

[Models.NTamd64]
...


Entweder du kopierst die Models-Section und benennst sie entsprechend um oder du schaltest via Registry ab, dass es einen NTamd64 Abschnitt geben muss. Dazu unter HKLM\Software\Microsoft\Windows\CurrentVersion\Setup DisableDecoratedModelsRequirement (REG_DWORD) auf 1 setzen.


INF Requirements for 64-bit Systems (http://www.microsoft.com/whdc/driver/install/64INF_reqs.mspx)
INF File Platform Extensions and x64-Based Systems (http://msdn.microsoft.com/en-us/library/ms790170.aspx)

Sony
2009-01-27, 22:44:24
HP bietet auch für viele aktuellere Scanner keinen XP x64 Support:
http://h10025.www1.hp.com/ewfrf/wc/document?docname=c00588319&lc=de&cc=ch&dlc=de&product=77357#N526
Die ScanJets 3c, 4c und 6100c (die übrigens alle baugleich sind) werden da nichtmal mehr erwähnt...

Panasonic
2009-01-28, 09:07:13
Falls jemand mal das selbe Problem wie ich haben sollte und nach x64 noch XP 32 Bit als zweites OS installieren sollte, hier ein Hinweis:

Der Bootloader verkraftet das nicht und XP x64 kann nicht mehr gebootet werden ("ntoskrnl.exe fehlt oder ist beschädigt"). Bevor Ihr nun die ntoskrnl.exe von der Setup-CD kopieren wollt (expand...), schiebt einfach die NTLDR von der CD auf x:\ (Laufwerk, auf dem x64 installiert ist). Der Hinweis auf die ntoskrnl.exe ist nämlich etwas falsch...

Gast
2009-07-21, 20:00:25
Hallo!
Ich habe auch den SJ 5p und möchte ihn unter Vista 32bit verwenden. Jemand eine Idee?

PatkIllA
2009-07-21, 20:02:46
Danke. Das Thema scheint doch komplexer zu sein. Ich werde wohl WIndows 98 SE in einer VM nutzen müssen, um den Scanner zu benutzen. Ich ärgere mich ein wenig, da hat man zwar recht alte, aber doch hochwertige Hardware, die einwandfrei funktioniert, aber es werden eifnach keine aktuellen Treiber mehr geschrieben :(Gibt es VMs, die SCSI im Gast zur Verfügung stellen?