Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Drucker umbennen (https://www.delphipraxis.net/149860-drucker-umbennen.html)

TheMiller 1. Apr 2010 01:17


Drucker umbennen
 
Hallo,

gibt es eine Windows-API-Funktion, mit deren Hilfe ich einen Drucker umbennen kann? Ich installiere einen PDF-Drucker (PDFCreator) und würde diesen gerne dann in den Namen meines Programms ändern, sodass auch der unerfahrenste User weiß, welcher Drucker mit meinem Programm verbunden ist.

Danke

Reinhard Kern 1. Apr 2010 09:17

Re: Drucker umbennen
 
Zitat:

Zitat von DJ-SPM
Hallo,

gibt es eine Windows-API-Funktion, mit deren Hilfe ich einen Drucker umbennen kann? Ich installiere einen PDF-Drucker (PDFCreator) und würde diesen gerne dann in den Namen meines Programms ändern, sodass auch der unerfahrenste User weiß, welcher Drucker mit meinem Programm verbunden ist.

Danke

Hallo,

Drucker sind definiert in:
Registry -> HKLM -> System -> Current Control Set -> Control -> Print -> Printers

Einem fremden Drucker den eigenen Namen zu geben, ist wahrscheinlich nicht verboten, aber irgendwie unanständig. Ich schmücke mich jedenfalls ungern mit fremden Federn.

Gruss Reinhard

SirThornberry 1. Apr 2010 09:26

Re: Drucker umbennen
 
Hallo Reinhard, umbenennen heißt ja nicht das man den ursprünglichen Namen nicht beibehält. Wenn der Originalname zum Beispiel "pdf-printer" heißt ist es zum Beispiel in meinen Augen kein Schmücken mit fremden Federn wenn man ihn umbenennt zu "pdf-printer needed for software-xy"

TheMiller 1. Apr 2010 09:39

Re: Drucker umbennen
 
Zitat:

Zitat von Reinhard Kern
Einem fremden Drucker den eigenen Namen zu geben, ist wahrscheinlich nicht verboten, aber irgendwie unanständig. Ich schmücke mich jedenfalls ungern mit fremden Federn.

Hallo Reinhard,

mit fremden Federn schmücken ist so eine Sache... Das machen viele, ich aber nicht. Ich zahle für meine Fremdkomponenten (wenn es keine vergleichbaren Freeware-Komponenten gibt) und nenne die Autoren und Fremdkomponenten, die ich verwende in meinem Programm.

In diesem Programm, um das es hier geht, verwende ich den PDF-Drucker von PDFCreator. Dieser ist unter GPL lizenziert. Ich kann damit machen, was ich will. Und was will ich machen? Richtig, ich spende den Autoren das Geld, was ich auch für einen kostenpflichtigen Drucker ausgegeben hätte, nenne die Autoren in meinem Programm und nenne lediglich den Drucker in "Programmname (PDFCreator)" um. So kommt - denke ich - jeder auf seine Kosten.

Also, Reinhard: Ich bitte dich vor dem Posten solcher Kommentare zu überlegen, ob du denjenigen, dem du antwortest, gut genug kennst, um solche Äußerungen treffen zu können. Ich behaupte einfach mal, dass du mich nicht gut genug kennst. Andere in diesem Forum vielleicht.

So das reicht. Das Thema ist erledigt. Ich habe meine soziale Einstellung zum Thema "mit fremden Federn schmücken" sachlich vertreten. Bin auch auf keinen sauer und will kein Streit etc. pp. blabla. Alles ok.

Nochmal zum Thema drucker

Ist das die einzige Stelle, an der die Druckernamen definiert sind, oder gibt es - wie in Windows üblich - noch tausend andere Stellen, die ich mit ändern muss. Außerdem liegt der Key in LOCAL_MACHINE - sind die Drucker benutzerkontenübergreifend?

Danke

himitsu 1. Apr 2010 09:47

Re: Drucker umbennen
 
es gäbe noch
HKEY_CURRENT_USER\Printers
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardwa re Profiles\0001\System\CurrentControlSet\Control\Pri nt\Printers
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardwa re Profiles\Current\System\CurrentControlSet\Control\ Print\Printers
HKEY_USERS\.DEFAULT\Printers
HKEY_USERS\S-1-5-18\Printers
... uwv.

Aber die "Treiber"/Drucker sind wohl global installiert und auch ihre Namen sind global (benutzerunabhängig)

Anscheinend werden dann nur noch lokal verschiedene Drucker userabhängig zugeteilt, welche verwendet werden dürfen.

TheMiller 1. Apr 2010 09:50

Re: Drucker umbennen
 
Ok, dann schau ich nochmal ein bisschen selbst und werden mich dann melden, wenn ich noch was rausgefunden bzw. eine Frage habe.

Danke soweit

Bernhard Geyer 1. Apr 2010 09:56

Re: Drucker umbennen
 
Zitat:

Zitat von DJ-SPM
In diesem Programm, um das es hier geht, verwende ich den PDF-Drucker von PDFCreator. Dieser ist unter GPL lizenziert. Ich kann damit machen, was ich will.

Autsch. Bei GPL wäre ich vorsichtig. Vor allem wenn dein Programm darauf angewiesen ist. Dann kommt *irgendeine* "Freie Software" Vereinigung her und verlangt das für dein Programm ebenfalls der Quellcode offen gelegt werden muss. Hier bringt es nur etwas wenn du vom Autor per Dual-Lizenz eine andere Lizenzierung verwenden darfst.

TheMiller 1. Apr 2010 10:06

Re: Drucker umbennen
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hm, auf der Homepage steht steht, dass es frei nutzbar ist - sogar für kommerzielle Produkte.

In den Lizenzdateien habe ich nichts davon gelesen, dass ich den Quelltext meines Programms offen legen muss. Ich hänge die zwei Dateien mal an. Vielleicht findet ihr was.

Ich habe auch extra auf Wikipedia und anderen Seiten über die GNU-Lizenz gelesen und nichts derartiges entdeckt.

Ich hatte folgendes vor. Mein Programm braucht diesen Drucker nicht, ist für die User aber viel komfortabler. Also wird der Drucker - wenn die User es wollen (Haken setzen bei der Installation) - installiert. In meinem Programm steht, dass ich den Drucker "PDFCreator" verwende, aber unter deren Lizenz. Ich wollte schon hervorheben, dass mein Programm nichts mit dem PDFCreator zu tun hat, außer, dass der PDFCreator nach dem Druck ein Programm von mir öffnet, welches mit in dessen Einstellungen eingegen hat.

Wäre nett, wenn jemand nochmal über die Lizenz schaut.

himitsu 1. Apr 2010 10:14

Re: Drucker umbennen
 
Zitat:

verlangt das für dein Programm ebenfalls der Quellcode offen gelegt werden muss
Ich dachte das war nur, wenn man diesen Code direkt in sein Programm einbindet? und nicht, wenn man dieses "nur" als externe Bibliothek nutzt. (DLL oder Treiber)

Bernhard Geyer 1. Apr 2010 10:35

Re: Drucker umbennen
 
Zitat:

Zitat von himitsu
Zitat:

verlangt das für dein Programm ebenfalls der Quellcode offen gelegt werden muss
Ich dachte das war nur, wenn man diesen Code direkt in sein Programm einbindet? und nicht, wenn man dieses "nur" als externe Bibliothek nutzt. (DLL oder Treiber)

DLL und Treiber wären LGPL. Bei GPL kann auch schon das gefährlich sein.

p80286 1. Apr 2010 11:16

Re: Drucker umbennen
 
HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
mit mehrfachem Vorkommen für lokale Drucker,
Netzdrucker befinden sich nur unter HKEY_CURRENT_USER

Ich würde von diesem Namensmimikry Abstand nehmen, nicht alle Benutzer sind blond, und ein wenig nachdenken hat noch keinem geschadet.

Gruß
K-H

Reinhard Kern 1. Apr 2010 13:13

Re: Drucker umbennen
 
Zitat:

Zitat von DJ-SPM
... nenne die Autoren in meinem Programm und nenne lediglich den Drucker in "Programmname (PDFCreator)" um. So kommt - denke ich - jeder auf seine Kosten...

Betrifft auch Sir Th.

Ist ja Ok, aber aus deinem Posting war nicht zu entnehmen, dass du so verantwortungsvoll damit umgehst, und eine Lieferung als z.B. "DJPrinter" fände ich eben schon anrüchig. Ich persönlich lasse Fremdkomponenten grundsätzlich unverändert.

Dass du damit machen kannst "was du willst", glaube ich zwar auch nicht, aber ich bin zugegebenermassen kein Spezialist für Lizenzen. Irgendeinen Inhalt sollte eine Lizenz ja schon haben, und wenn man garkeine angibt, gilt immer noch das Urheberrecht.

Grundsätzlich sollte das auch kein persönlicher Angriff sein, sondern eben ein Hinweis darauf, dass sowas meiner Meinung nach problematisch ist, zumindest in der ursprünglichen Formulierung "dem Drucker den Namen meines Programms geben" oder so ähnlich.

Gruss Reinhard

TheMiller 1. Apr 2010 13:20

Re: Drucker umbennen
 
Hey.

Das als persönlichen Angriff habe ich das nicht gewertet. Wollte nur "klarstellen" (vielleicht ein zu hartes Wort), dass ich die Arbeit fremder Leute respektiere.

Was das Urheberrecht angeht - damit kenne ich mich als "Jurist" eig. recht gut aus ;) In der Lizenz oder auf der Seite steht allerdings, dass ich den Quelltext verändern und meinem Bedürfnissen anpassen darf. Das meinte ich auch mit "ich darf damit alles machen". Den Quelltext zu ändern ist ein wesentlich größerer Eingriff ist die fremde Software, als einfach nur dem Druckernamen einen Prefix zu geben. Das meinte ich damit. Der ursprüngliche Namen bleibt ja erhalten.

Es sprechen halt einige Punkte dafür, dass jeder den Drucker unter ganz freien Bedingungen benutzen kann: Silent-Install-Optionen, GPL, die Homepage etc.

Gut, ich bin auch kein Lizenz-Experte. Vielleicht findet sich hier jemand, der uns noch ein bisschen aufklären kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz