Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Strom an usb-port mit PHP unterbrechen [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Strom an usb-port mit PHP unterbrechen


 
ostems
10-02-2009, 00:42 
 
Hallo PHP-Freunde

Ich habe eine Kassensoftware geschrieben, (lokal) in PHP.
Ist eine Zeitabrechnungsgeschichte für Billardtische usw....

ich möchte gerne wissen ob und wie es möglich ist,

einen usb-port bei programmstart zu deaktiviren (Stromzufuhr unterbrechen)
und nach dem klick auf einen Button kurzfristig zu aktivieren... (Stromzufuhr einschalten)

damit wird die Kassenschublade geöffnet.

die Hardware ist schon dafür gebaut...

Brauche also lediglich eine Lösung in PHP ,
also wie ich an den Port komme oder halt mit Java-Script...
ist mir egal.

Oder ein Programm das sowas kann, welches ich dann aus PHP starte...

Kennt jemand sowas oder hat sogar eine gute Idee?

Bin für jede Hilfe Dankbar.

 
onemorenerd
10-02-2009, 02:22 
 
Mit Javascript sicher nicht!
Welches OS?

 
ostems
10-02-2009, 06:48 
 
warum nicht mit javascript?
wenn man es durch ein von javascript angesteuertes programm aktiviert?

OS: ab win2000.

sag bloß du hast eine idee....

 
ostems
10-02-2009, 07:02 
 
ich müsste noch hinzufügen, das es jetzt durch javascript aktiviert wird.

über den Druckeranschluß LPT2.
geht aber nur bei Onbord.

also ich starte das programm mit js aktiviert durch den klick auf einen button

<script>
var fullPath = "C:\\\\xampp\\htdocs\\ok_system\\meinOrdner\\Programm.EXE";

var WshShell = new ActiveXObject("WScript.Shell");
var oExec = WshShell.Exec(fullPath);
while (oExec.Status == 0)
{
WScript.Sleep(100);
}
WScript.Echo(oExec.Status);
</script>
das dadurch gestartete Programm öffnet die kasse und schließt sich sofort wieder.
es funzt bei allen rechnern die den anschluß onboard haben.
sonst leider nicht

 
ghostgambler
10-02-2009, 09:20 
 
Funktioniert das Programm denn wenn du es von Hand aufrufst auf diesen Rechnern?
Ansonsten würde ich da erstmal ansetzen und etwas suchen was die gesuchte Funktionalität bietet.
Eine deaktivere_usb_port()-Funktion gibt es ja nun wirklich nicht in jeder Programmiersprache.

 
UzumakiNaruto
10-02-2009, 15:27 
 
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q311272

devcon.exe .. damit kannst du hardware deaktivieren.
schreibe dir eine batch datei die das übernimmt und führe sie mit php aus ;)

 
ostems
10-02-2009, 17:01 
 
Zunächst einmal Danke das Ihr versucht mir zu helfen...

@ghostgambler

Es gibt noch kein Programm welches ich von Hand starten kann.
(außer das für den LPT2)
es geht auch nicht darum den Port nur zu deaktivieren, sondern
den USB-Port Stromfrei zu machen und kurzfristig wieder strom zuführen.
Nur die Deaktivierung reicht leider nicht aus.

Aber danke für deine Unterstützung.

====================================

@UzumakiNaruto

Vielen Dank...
Könnte klappen...
das schau ich mir mal an.

 
fireweasel
12-02-2009, 22:33 
 
Original geschrieben von UzumakiNaruto
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q311272

devcon.exe .. damit kannst du hardware deaktivieren.
Nein, devcon.exe aktiviert oder deaktiviert Treiber. Soweit ich das beurteilen kann, ist es aber damit nicht möglich, die Stromversorgung einer USB-Buchse zu unterbrechen. Für diesen Zweck müsstest du einen eigenen Treiber schreiben, der entweder einen "USB-Root-Hub" oder den "USB-Host-Controller" direkt ansteuert -- wenn dieser das komplette Abschalten der Versorgungsspannung überhaupt unterstützt.

 
ostems
13-02-2009, 02:41 
 
nicht ganz... je nach dem was in der .bat steht...
er deaktiviert das gerät welches angeschlossen ist.

wir haben das gerät morgen da...

schreibe dann ob es klappt oder nicht.

 
UzumakiNaruto
13-02-2009, 13:49 
 
Original geschrieben von ostems
nicht ganz... je nach dem was in der .bat steht...
er deaktiviert das gerät welches angeschlossen ist.

wir haben das gerät morgen da...

schreibe dann ob es klappt oder nicht.

genau .. ich habe damit auch schon ganze geräte deaktiviert (wie im geräte manager)

 
Piremilok
24-02-2009, 14:19 
 
Morgen ist schon ne Weile vorbei & ich wollt mal fragen, was daraus geworden ist?

 
ostems
24-02-2009, 19:13 
 
oh, sorry...

es klappt wie nur bedingt.
bis die kasse aufspringt dauert halt recht lange.
so ca 3 - 4 sec.

wir bauen jetzt eine neue platine die mit einer treiberdatei verbunden wird.
den treiber zu stoppen dauert so ca 0,5 sec.
haben wir mit dem drucker getestet.

die neue platine bekommt noch ein paar extratools für z.b.
bondrucker und kassenkeyboard.

ich schreibe wieder wenn das geklappt hat und stelle die dateien evtl. zum download rein.

bis dann...

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:35 Uhr.