2 berichten aan het bekijken - 1 tot 2 (van in totaal 2)
  • Q:
    Bijdrager
    Lexis

    Applescript: Afsluiten applicatie na disconnecten netwerk

    Hallo!

    Ik ben een redelijke Applescript noob, maar ik ben opzoek naar een script dat een bepaalde applicatie (die altijd internet nodig heeft) automatisch afsluit wanneer ik disconnect van het netwerk. Anders gaat de applicatie miepen en ben ik een hoop settings kwijt.

    Ik weet wel ongeveer hoe het eruit moet zien, maar ik heb geen idee hoe je de voorwaarde van het disconnecten van het netwerk moet doen…
    Iets met:
    Tell application ‘Applicatie’
    quit
    end tell

    Verder dan dat kom ik niet echt. Alvast heel erg bedankt voor de hulp!

    Groet,

    Lexis.

    Bijdrager
    dj bazzie wazzie

    Dit is nagenoeg niet mogelijk in Applescript. Er is geen event of een handler in Applescript voor het disconnecten van netwerk. Ik disconnect op mijn werk elke dag mijn MBP door gewoon netwerk stekker eruit te trekken. In principe is het dan zo dat wanneer ik disconnect het eigenlijk geen zin meer heeft om een event door het systeem te gooien. Sterker nog eigenlijk is het programma waarmee jij werkt niet juist geprogrammeerd maar daar ben jij op dit moment niet mee geholpen.

    Mocht je dan toch willen proberen moet je pollen en dat kan je doen door een idle handler te gebruiken. Wanneer je in Applescript wil pollen kun je beter een idle handler gebruiken dan een delay in een repeat. Een idle handler zal in de backgrund als een aparte thread draaien dus je kan andere dingen doen in je run handler of open handler als je dat zou willen. Het verschil is dat je je script nu wel moet opslaan als een stay-open script (Nederlandstalig OS X: niet sluiten). Normaal gesproken wordt de run handler uitgevoerd en wordt het programma direct gestopt en dat willen we niet omdat we een lege run handler hebben.

    on idle
    try
    do shell script “ping -c 1 ‘www.google.nl'”
    on error
    –als je hier terecht komt heb je geen netwerk en moet je iets doen
    Tell application ‘Applicatie’ to quit
    quit –nu stoppen we zelf met draaien
    end try
    return 5 –ga over vijf seconden deze functie opnieuw uitvoeren
    end idle

    on quit
    continue quit
    end

2 berichten aan het bekijken - 1 tot 2 (van in totaal 2)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.