Systemklänge deaktivieren per Script

  • Hallo zusammen


    ich würde gerne , z.B. nach einem hardreset, die Systemklänge deaktivieren.
    (Ich hab WINce 5)
    Man kann das zwar über die Systemsteuerung bewerkstgelligen, aber ich möchte dies gerne per Automation machen.


    Kann man dies evtl. mit Mort-Scriupt machen und wenn ja -< wie.


    Vielen Dank erstmals


    zefrim

  • Mein 1. Gedanke waren jetzt die *.lua's in \init.d\. ;) Auch von dort sind Reg.-änderungen möglich, noch vor dem GoPal-Start. Dann allerdings fix, ohne 'choice'.

  • per lua müßte man doch die für die Systemklänge zuständigen wav-Dateien im windows-pfad überschreiben können.
    entweder mit leiseren wavs oder ganz leeren.


    (ich hab derzeit eine schreibgeschützte ! cab in meinem Skin-Install-Ordner, die ich aber bei Bedarf auch mal händisch per explorer oder TC "nachinstallieren" kann nach einem HR.)


    mikee

  • Per *.lua geht alles, was auch mit MortScript ginge. Denn zur Not rufe ich ein ebensolches halt auf. ;) Man muss nur auf die Aufrufreihenfolge achten (Nummerierung).

  • HI
    meine k60navigation.lua
    sieht im moment so aus:
    -----------
    local shell = Shell:new();
    if shell:Execute( "file:///My Flash Disk/programme/Startmenu/menu.exe", "" ) == false then
    end
    shell:delete();
    ---------------



    jetzt weiß ich nicht genau wie ich den copy in dieser Zeile codieren müßte


    meine Morst script sieht im moment so aus- aber das funktioniert nicht.


    SetFileAttribute("\Windows\exclam.wav", "readonly", FALSE)


    copy ("\My Flash Disk\Programme\Silence\exclam.wav" , "Windows\exclam.wav")

  • Bist du sicher, dass du die File-Attribute in Windows überhaupt ändern darfst?


    Edit:


    Hier gibt es eine gute Dokumentation über die Scriptsprache LUA: http://www.lua.org/docs.html

    Einmal editiert, zuletzt von Pitter ()

  • setze nach dem Copy-Befehl wieder den Schreibschutz, vielleicht klappt es dann


    SetFileAttribute("\Windows\exclam.wav", "readonly", FALSE)


    copy ("\My Flash Disk\Programme\Silence\exclam.wav" , "Windows\exclam.wav")


    SetFileAttribute("\Windows\exclam.wav", "readonly", TRUE)

    Gruß Mr.

  • HI


    @PItter: ich bin mir nicht sicher ob das überhaupt geht - und danke für den Hinweis mit den LUA-Beschreibungen


    XXMrHyde: geht leider auch nicht


    Danke


    ich werde mal weiter suchen


    Gruß
    zefrim

  • zefrim, check doch nur mal Deine anderen *.lua's! :icon_mrgreen:


    EDIT: außerdem ein Tipp: Änderungen an den *.lua's würde ich immer in einer eig. Datei machen, k98zefrim.lua bspw. Dann lassen sich neue Versionen schneller anpassen.

  • Probier mal diesen Code für die LUA.... Am Besten als k09sound.lua abspeichern...
    Der code ist jetzt ungetestet, aber sollte eigentlich beim Start aufgerufen werden...



    Hab noch mal geändert... die shell fehlte.
    allerdings hab ich gerade mal getestet... Der Eintrag wird gesetzt, hat aber keine Auswirkung... :dontknow:


    Edit2:


    Problem ist, dass die REG neu eingelesen werden muss. Also müsste man einen SR auslösen, damit die Änderung in der REG übernommen wird. Das wird wohl auch mit Mortscript und Koord das Problem sein...
    Mal sehen, vielleicht habe ich da noch ne Idee zu....

    3 Mal editiert, zuletzt von Pitter ()

  • Hi Pitter


    geht leider nicht, da bekomme ich nach dem Hardreset einen Fehler


    irgend einargument finder er nicht


    "lua runtime Error (errno=2)
    .
    .
    .
    errror in Function "existsValue'.argument #3 is 'string'
    no object expected


    Gruß
    Zefrim

  • Jep... hatte den ersten Beitrag noch mal editiert... ist immer doof, wenn man gerade nix zum testen da hat. Zum Glück kam meine Frau eben vom Einkaufen zurück... :002:


    Also...
    Bei mir funktioniert das jetzt so, dass die LUA prüft, ob der Eintrag auf .DefaultSounds steht. Ist das der Fall, wird der eintrag auf .NoSounds gesetzt und ein SR ausgelöst. damit wird dann die REG neu eingelesen und das Gebimmel bleibt weg....


    Die Lua dafür sieht folgendermassen aus:

    2 Mal editiert, zuletzt von Pitter ()

  • Frage in dem Zusammenhang:
    kann ich per lua / mort die windows-wave-Dateien überschreiben ?
    oder zickt er da evtl. ?
    (die Abfrage nach einem HR haben wir wegen der mort-Registrierung fürs iPT in einer lua bereits drin, dort könnte ich dann dies zusätzlich einbinden)


    mikee

  • Hallo mikee,


    müsste funktionieren per LUA.... hab ich allerdings noch nicht gemacht, weil ich ungern Dateien in Windows tausche, wenn es andere Lösungen gibt.