Ik wil via logon VBscript (of VB.net) een paar honderd users de gepaste netwerkprinters geven, standaard printer instellen enz. Dit lukt aardig in VBscript. Maar voor de centrale multifunctionals van Canon (type iR5000) is er een probleem. We hebben geen koppeling met active directory, en elke gebruiker heeft een persoonlijke mailboxnummer in deze printers. Die stel je op de client in door in de voorkeursinstellingen van de printer de printermodus van “Afdrukken” naar “Opslaan” te wijzigen en de juiste mailbox te kiezen.
Via ProcesMonitor ben ik er al achter gekomen dat deze instelling wordt opgeslagen in de printer settings key in de registry, onder HKCU\Printers\DevModes2 waaronder elke printer een waarde heeft met naam “\\server\printernaam“ en in de gegevens een bytereeks waar alle settings in staan. Beetje experimenteren toont aan dat byte 971 van 1 naar 4 gaat als je “Opslaan” kiest en byte 1965 bevat rechtstreeks de mailboxnummer (waarde 99 is boxnummer 99 etc)
Via VBscript pas ik de waarden van deze bytes aan. Zekerheidshalve lees ik ze daarna nog opnieuw in en stel vast dat ze wel degelijk gewijzigd zijn.
Maar dan treedt het probleem op: als je de voorkeursinstellingen van de printer oproept, staan daar de oude nog in. Klik je op “ok” worden zelfs deze oude instellingen terug in de registry geschreven. Ik heb de bytes eens veranderd met het scriptje, en dan herstart zonder de voorkeursinstellingen op te roepen, maar daarna zitten er nog steeds die oude instellingen. De bestanden die Canon’s printerdriver gebruikt blijken ongewijzigd en ik vermoed dan ook dat dit niet de printerdriver maar het Printer en Fax verhaal van Windows (XP) zelf is.
Heeft iemand meer informatie of weet hoe ik de printerinstellingen kan wijzigen via registry zodat ze ook door het controlepanel van de voorkeursinstellingen overgenomen worden?
Via ProcesMonitor ben ik er al achter gekomen dat deze instelling wordt opgeslagen in de printer settings key in de registry, onder HKCU\Printers\DevModes2 waaronder elke printer een waarde heeft met naam “\\server\printernaam“ en in de gegevens een bytereeks waar alle settings in staan. Beetje experimenteren toont aan dat byte 971 van 1 naar 4 gaat als je “Opslaan” kiest en byte 1965 bevat rechtstreeks de mailboxnummer (waarde 99 is boxnummer 99 etc)
Via VBscript pas ik de waarden van deze bytes aan. Zekerheidshalve lees ik ze daarna nog opnieuw in en stel vast dat ze wel degelijk gewijzigd zijn.
Maar dan treedt het probleem op: als je de voorkeursinstellingen van de printer oproept, staan daar de oude nog in. Klik je op “ok” worden zelfs deze oude instellingen terug in de registry geschreven. Ik heb de bytes eens veranderd met het scriptje, en dan herstart zonder de voorkeursinstellingen op te roepen, maar daarna zitten er nog steeds die oude instellingen. De bestanden die Canon’s printerdriver gebruikt blijken ongewijzigd en ik vermoed dan ook dat dit niet de printerdriver maar het Printer en Fax verhaal van Windows (XP) zelf is.
Heeft iemand meer informatie of weet hoe ik de printerinstellingen kan wijzigen via registry zodat ze ook door het controlepanel van de voorkeursinstellingen overgenomen worden?