com port blockieren

  • hallo,

    ich suche nach einer möglichkeit den com-port zu blockieren oder zu unterbrechnen oder zu sperren.

    mein problem:
    ich schicke über den windows-drucker-spooler daten zum plotter.
    beende ich den windows spooler, bekommt der plotter einen buffer overflow (fehler.. ich muss den plotter aus und wieder einschalten).
    (auch wenn ich den spooler prozess kille -> zack buffer overflow) das bedeutet, irgendwelche daten werden noch gesendet, indem moment wo der spooler beendet wird.

    ich hab schon alle einstellungen / übertragungsparameter usw. probiert.
    nur eins hat geholgen: seriellen stecker ziehen dann windows-spooler-beenden und neustarten. stecker wieder dran. und läuft.

    nun fehlt mir dieses codeschnipsel um genau das zu bewerkstelligen (den com port blockieren, so dass ich den drucker-spooler ohne fehlermeldung am plotter, beenden kann).

    vielen dank.

    Einmal editiert, zuletzt von helpme (25. November 2013 um 19:13)

  • vielen dank für die info...

    hab devcon ausprobiert... sehr interessant....
    das problem ist nur, dass er zum deaktivieren rebooten will. das ist natürlich doof.

    ich will den port ja nur kurzzeitig deaktiviern und wieder aktivieren

    (es handel sich um ein usb gerät (es ist ein usb zu seriell konverter))

    vielleicht hat noch jemand eine idee, wie ich diese verbindung blockieren kann.

    danke!!!

    • Offizieller Beitrag

    HAllo

    Huch? Bei mir will er nicht neustarten. Hatte früher mal ein ähnliches Problem, was ich perfekt mit Devcon lösen konnte. Welches Betriebsystem benutzt du?

    Hast du es auch so gemacht?
    http://www.autoitscript.com/forum/topic/13…-disable-stuff/

    Sonst hilft dir vlt auch das weiter?
    http://www.autoitscript.com/forum/topic/83…ct-a-usb-drive/

    Gruß,
    Spider

  • hallo,

    also sobald ich eine verbindung mit dem usb-seriel-adapter habe (daten an den plotter sende), kann ich diesen nicht über devcon deaktivieren, da er dann neustarten will.
    gibt es vielleicht die möglichkeit mit autoit den seriellen buffer zu löschen?

    danke.

  • Such mal nach der 'CommMG.au3' im Forum. Ist eine DLL inkl. AutoIt-Wrapper.

    Die Funktion '_CommClearOutputBuffer()' könnte ggf. helfen.

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:

    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"