Forum: PC-Programmierung Zweite Maus nur in einer Anwendung laufen lassen


von Lutz H. (luhe)


Lesenswert?

Hallo,

sicherlich wurde die Frage schon irgendwo gestellt,
aber die Suchfunktion gibt zu viele Antworten über Mäuse.

Normalerweise können mehrere Mäuse an einen Window Rechner angeschlossen 
werden und diese arbeiten dann gleichberechtigt miteinander in allen 
Anwendungen.

Ich möchte das verändern und eine Maus nur in einer Anwendung nutzen und 
eine andere Maus in allen anderen Anwendungen.

Wie ist es möglich eine Mause aus der Verwaltung durch das 
Betriebssystem herauszulösen?

Danke für Tipps.

: Verschoben durch User
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Möglicherweise lässt sich da etwas mit einem Filtertreiber erledigen, 
der sich zwischen den Standard-HID-Maustreiber und das Betriebssystem 
schiebt.

Eine Alternative wäre die Verwendung von libusb-win32 oder WinUSB, da 
müsstest Du nachsehen, ob es damit möglich ist, ein von Treibern 
versorgtes USB-Gerät von diesem Treiber zu isolieren und selbst 
anzusteuern.

Noch eine Alternative wäre die Verwendung einer PS/2-Maus mit einem 
selbstgestrickten USB-Adapter, der die Mausinformationen dann z.B. über 
eine virtuelle serielle Schnittstelle versendet und dabei darauf achtet, 
nicht kompatibel zu alten seriellen Mäusen zu sein (die nämlich werden 
von Windows nach wie vor zur großen Freude vieler Anwender von anderen, 
an seriellen Schnittstellen angeschlossenen Geräten immer noch 
unterstützt).

von S. R. (svenska)


Lesenswert?

Was du vorhast, ist in Windows nicht vorgesehen, denn sonst könnte man 
mit mehreren Tastaturen und Mäusen an einem einzelnen Windows mehrere 
Benutzer gleichzeitig arbeiten lassen - und das widerspricht den 
Lizenzbedingungen (die professionellen Terminalserver-Editionen mal 
außen vorgelassen). Damit ist das, was du vorhast, prinzipiell nicht 
möglich.

Deine Anwendung darf aber gerne selbst auf Hardware zugreifen. Wenn du 
also deine Maus so an das Windows anbindest, dass (a) die Maus keine 
Maus im Windows-Sinne ist und (b) deine Anwendung sie direkt ansprechen 
kann, dann funktioniert das.

Es könnte auch funktionieren, wenn du eine normale USB-Maus anschließt, 
im Gerätemanager deaktivierst und dann direkt von deiner Anwendung aus 
ansprichst. Das dürfte einfacher sein. Du musst aber das Mausprotokoll 
(USB-HID oder zumindest das Boot Protocol) in deiner Anwendung 
implementieren. Eine serielle Maus dürfte auch gehen, aber PS/2 wird 
schwierig.

von Roland P. (pram)


Lesenswert?

USB-Port an eine VM durchschleusen fällt mir noch ein. (Wobei man dann 
ja eigentlich 2 Betriebssysteme hat)

von Lutz H. (luhe)


Lesenswert?

Danke,
Diese  drei Stichworte  haben mir sehr weitergeholfen.
Jetzt kann ich mir die Möglichkeiten etwas genauer ansehen.

Lutz

: Bearbeitet durch User
von Peter II (Gast)


Lesenswert?

S. R. schrieb:
> Was du vorhast, ist in Windows nicht vorgesehen, denn sonst könnte man
> mit mehreren Tastaturen und Mäusen an einem einzelnen Windows mehrere
> Benutzer gleichzeitig arbeiten lassen - und das widerspricht den
> Lizenzbedingungen (die professionellen Terminalserver-Editionen mal
> außen vorgelassen). Damit ist das, was du vorhast, prinzipiell nicht
> möglich.

falsch.

http://www.ibik.ru/

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Peter II schrieb:
> falsch.

Ob dieses Produkt im Einklang mit den Lizenzvorstellungen von Microsoft 
steht, ist eine ganz andere Frage.

von Peter II (Gast)


Lesenswert?

Rufus Τ. F. schrieb:
>> falsch.
>
> Ob dieses Produkt im Einklang mit den Lizenzvorstellungen von Microsoft
> steht, ist eine ganz andere Frage.

es kann schon sein, das die Firma Geld an MS für jeder verkaufte Lizenz 
zahlen darf/muss. Aber es ging ja erst mal nur um die Technik. Es geht 
auch also auch mit Windows.

von Peter II (Gast)


Lesenswert?

Das könnte weiter helfen

[...]
Microsofts MultiPoint-Technologie: MultiPoint ermöglicht die Verwendung 
von bis zu 30 Mäusen  gleichzeiig an einem einzelnen Windows-PC. Ziel 
dieser Software ist es nicht, mehrere Benutzer getrennt voneinander an 
einem Computer arbeiten zu lassen, sondern, dass mehrere Benutzer 
zusammen einen Computer benutzen.
[...]


https://msdn.microsoft.com/de-de/library/windows/desktop/ee906605.aspx

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Peter II schrieb:
> Aber es ging ja erst mal nur um die Technik. Es geht auch also auch mit
> Windows.

Daß das prinzipiell möglich ist, stand ja eigentlich schon fest; der 
"das geht nicht weils die Lizenz nicht erlaubt"-Einwurf kam nicht von 
mir. Ich hab' schon am Sonntag ein paar Hinweise gegeben, wie das 
gewünschte technisch umgesetzt werden könnte.

von S. R. (svenska)


Lesenswert?

Peter II schrieb:
> Das könnte weiter helfen

Das beschreibt kein Multi-Seat, widerspricht also in dem Punkt nicht der 
Lizenzvereinbarung.

von Lutz H. (luhe)


Lesenswert?

Multi- User: Interessant, Widerspricht es auch der
Lizenzvereinbarung ein Spiel zu schreiben, bei dem zwei Nutzer 
gleichzeitig die Tastatur nutzen. Einer die S und X Taste und der andere 
die K und M Taste?
Ich habe jetzt "MultiPoint Mouse SDK" entdeckt. Werde es mir mal 
ansehen.

: Bearbeitet durch User
von Lutz H. (luhe)


Lesenswert?

Da die Anwendung seit einigen Jahren nicht mehr gewartet wird hier
die Bezeichnung des SDK mit Beispielen, um die dll`s leichter zu finden.


en_windows_multipoint_mouse_sdk_1.5.1_x86_x64.msi

von S. R. (svenska)


Lesenswert?

Lutz H. schrieb:
> Multi- User: Interessant, Widerspricht es auch der
> Lizenzvereinbarung ein Spiel zu schreiben, bei dem zwei Nutzer
> gleichzeitig die Tastatur nutzen.

Warum sollte es?

Im engeren Sinn ist das nichtmal eine Multi-User-Anwendung, da es nur 
einen einzelnen Spieler gibt, alles andere sind Mitspieler, die von ihm 
abhängig und in der gleichen Anwendung gefangen sind.

Das konnten Siedler II (Splitscreen mit zwei Mäusen) und Heroes of Might 
and Magic (Spieler ziehen nacheinander) auch schon vor über 20 Jahren. 
Nahezu alle Spielekonsolen können das auch und damit hast du schonmal 
Präzedenzfälle. :-)

Das ist etwas anderes, als eine Multi-Seat-Anwendung, bei der mehrere 
Benutzer sich einen PC gleichzeitig, aber unabhängig voneinander teilen. 
Auf einem normalen Windows-System kannst du mehrere Benutzer nicht 
gleichzeitig einloggen und aktiv haben (dafür gab es dann die 
Terminal-Server, für die andere Lizenzbedingungen gelten).

Installiere mal ein antikes WinNT Server, dann siehst du den Hintergrund 
deutlicher: Du musst während der Installation angeben, wieviele 
Client-Lizenzen du besitzt und ob die an die Clients (per-Server) oder 
an den Server (per-Seat) gebunden sind. Eine Lizenz gilt also 
hauptamtlich pro aktivem, lokalem Benutzer (und damit indirekt auch pro 
Installation - Aktivierung).

Davon abgesehen war der PC technisch auch nicht für Multi-Seat gebaut 
(PCI ermöglicht mehrere Grafikkarten - aber nicht alle, USB mehrere 
Tastaturen) und Windows auch nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.