Script in Autostart ziehen

Code-Stücke können hier veröffentlicht werden.
INFACT
User
Beiträge: 385
Registriert: Freitag 5. Dezember 2008, 16:08

Ich habe mal einen Code gebastelt, der einen Link zum Programm, das man gerade auführt in die Autostart macht, sodass es beim nächsten neustart sofort startet(nur unter windoof):

Code: Alles auswählen

import win32api
import pythoncom
import ctypes
from win32com.shell import shell, shellcon
import sys
import os

def Username():
    return win32api.GetUserName()

global name
name=sys.executable.split("//")[-1]
if type(name)==str:
    name=sys.executable.split("\\")[-1]#bei mir hatte ich schonmal das Problem, dass die pfäde plötzlich \ so waren...

def Autostart():
    autonom="C:\\Dokumente und Einstellungen\\%s\\Startmenü\\Programme" %(Username())
    if not name in os.listdir(autonom):
        link(sys.executable,r"C:\Dokumente und Einstellungen\All Users\Startmenü\Programme",name+".lnk")
        link(sys.executable,autonom,name+".lnk")
    else:
        print "Es ist schon in der Autostart"

def link(exe,path,lnkname):
    shortcut = pythoncom.CoCreateInstance(
        shell.CLSID_ShellLink,
        None,
        pythoncom.CLSCTX_INPROC_SERVER,
        shell.IID_IShellLink
    )
    shortcut.SetPath(exe)
    shortcut.SetDescription("Python's Autostart Func")
    shortcut.SetIconLocation(sys.executeable, 0)

    persist_file = shortcut.QueryInterface(pythoncom.IID_IPersistFile)
    persist_file.Save(os.path.join (path, lnkname), 0)
[b][i]ein kleines game für die die lust haben http://konaminut.mybrute.com[/i][/b]
;-)
lunar

Die Imports solltest du aufräumen, "global name" ist an dieser Stelle völlig überflüssig, und deine Pfad-Manipulation an "name" ist ein bisschen abenteuerlich, "os.path.basename" existiert.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Zudem nicht darantiert wird dass WIndows überhaupt auf ``C:`` installiert wurde. Auch ``Dokumente und Einstellungen`` muss gar nicht existieren, unter Vista heißt der Ordner nun ``Users``, in allen Sprachversionen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
hendrikS
User
Beiträge: 420
Registriert: Mittwoch 24. Dezember 2008, 22:44
Wohnort: Leipzig

INFACT hat geschrieben:(nur unter windoof)
Wenn Du Windows nicht magst, warum benutzt Du es eigentlich? Irgendwie inkonsequent.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

hendrikS hat geschrieben:Wenn Du Windows nicht magst, warum benutzt Du es eigentlich? Irgendwie inkonsequent.
Weil über Windows herziehen leichter ist als Taten folgen zu lassen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
lunar

Hey, du verstehst das völlig falsch ... "windoof" ist nicht kindisch, nein, das ist subversiver innerer Widerstand. Emigrieren ist ja einfach, echte Widerstandkämpfer zersetzen das System von innen heraus mit der Waffe des Spotts ... ;)
INFACT
User
Beiträge: 385
Registriert: Freitag 5. Dezember 2008, 16:08

Leonidas hat geschrieben:
hendrikS hat geschrieben:Wenn Du Windows nicht magst, warum benutzt Du es eigentlich? Irgendwie inkonsequent.
Weil über Windows herziehen leichter ist als Taten folgen zu lassen.
Weil das der PC meiner Mutter ist und ich Linux nicht darauf installieren darf?
Ich habe zwar Linux, aber bekomme erst in 2 Monaten einen Eigenen PC und habe keine Lust das immer zu Booten :wink:

Ausserdem gibt es glaube ich nur auf Windows eine Autostart :wink:
[b][i]ein kleines game für die die lust haben http://konaminut.mybrute.com[/i][/b]
;-)
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

INFACT hat geschrieben:Ausserdem gibt es glaube ich nur auf Windows eine Autostart :wink:
Falsch geglaubt.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

INFACT hat geschrieben:Weil das der PC meiner Mutter ist und ich Linux nicht darauf installieren darf?
Linux kommt mit Dualboot zurecht. Außerdem gibt es viele Möglichkeiten Linux auf Windows zu nutzen etwa Virtuelle Maschinen, andLinux und Ulteo.

@lunar: +1 :)
Zuletzt geändert von Leonidas am Sonntag 8. März 2009, 23:36, insgesamt 1-mal geändert.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
derdon
User
Beiträge: 1316
Registriert: Freitag 24. Oktober 2008, 14:32

Im Falle des Dualboots muss auch die Mutter damit zurechtkommen können. Ich weiß nicht, ob die bei GRUB überfordert ist. VMs sind eine gute Lösung, solange der PC das mitmacht (min. zwei Prozessorkerne und 2GB RAM sind gute Voraussetzungen).
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

derdon hat geschrieben:Ich weiß nicht, ob die bei GRUB überfordert ist.
Naja "Windoof" als Standardauswahl und man muss nichts tun außer warten, bis der Bootvorgang beginnt ... was kann jemanden daran überfordern?

Ok, evtl. führt es zu kurzzeitigen Panikattacken "Oh Gott ... das sieht ja ganz anders aus als bisher ...!" ;-)
Nocta
User
Beiträge: 290
Registriert: Freitag 22. Juni 2007, 14:13

Ich frag mich sowieso warum es so viele Leute gibt, die ohne Ahnung zu haben einfach mal "Windoof" fertig machen und Linux vergöttern.
Nur weil's "cool" ist und mich nervt? ;)

Ich finde Windows sogar gut. Gut, es kostet (eigentlich) etwas und es gibt auch einige Dinge, die einem nicht passen könnten. Aber für mindestens 90% aller PC-Benutzer (die, die keine speziellen Anprüche stellen, die das System nicht erfüllt) müsste Windows doch die bessere und (meistens) einfachere Lösung sein.
Für wirklich Computerinteressierte und Bastler etc. ist Linux natürlich interessanter, allein schon weil's Open Source ist.

Ich arbeite zum Beispiel lieber unter Windows, auch wenn ich mit Linux recht gut klarkomme. Vielleicht ändert sich das in den kommenden Jahren auch noch mal. Vielleicht dann, wenn ich mir schon wieder ein neues Windows kaufen müsste und die Linuxalternative eben etwas günstiger dasteht ;) Technisch ausgereift im Bezug auf Hardwareunterstützung und anderen Dingen ist's ja auch langsam.
Dauerbaustelle
User
Beiträge: 996
Registriert: Mittwoch 9. Januar 2008, 13:48

Gut, es kostet (eigentlich) etwas

AHA! Erwischt!!1
Nocta
User
Beiträge: 290
Registriert: Freitag 22. Juni 2007, 14:13

Dauerbaustelle hat geschrieben:AHA! Erwischt!!1
Du hast das einseinself vergessen, du un13370R N00B :!:
Aber eigentlich hab ich damit (selbstverständlich ;) ) nicht auf mich angespielt.

PS: Spammer! :o
PPS: Damn, ich auch
PPPS: Egal :x
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

Nocta hat geschrieben:Ich finde Windows sogar gut. Gut, es kostet (eigentlich) etwas und es gibt auch einige Dinge, die einem nicht passen könnten. Aber für mindestens 90% aller PC-Benutzer (die, die keine speziellen Anprüche stellen, die das System nicht erfüllt) müsste Windows doch die bessere und (meistens) einfachere Lösung sein.
Für wirklich Computerinteressierte und Bastler etc. ist Linux natürlich interessanter, allein schon weil's Open Source ist.
Ich BENUTZE seit zwei Jahren fast ausschließlich Linux. Ich muss da nix frickeln (aber man tut es ab und zu weil es Spaß macht ;) ).

Die Installation ist mittlerweile deutlich einfacher und schneller als unter Windows. Hab grad gestern Abend meinen Laptop neu installiert. Vom Booten des Installationsmediums (USB Stick) bis zum Neustart nach Abschluss der Installation sind weniger als 30 Minuten vergangen. Und danach funktioniert (zumindest bei mir) alles. Keine Treiber im Netz suchen und installieren, keine Bloatware mühsam deinstallieren, kein Nachinstallieren von Virenscannern, Firewalls usw.

(Meistens) ist die einfachere Lösung inzwischen wirklich Linux. Das einzige, was es kompliziert macht, sind die Blockaden in den Köpfen der User, die nicht bereit sind umzudenken. Umdenken muss man nämlich, wenn man mit Linux etwas mehr machen will als Mails schreiben und Surfen. Bei mir hat es auch eine Weile gedauert, aber ich habe es nicht bereut.
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

Um mal wieder zum Thema zu kommen:
Warum trägst du dein Programm nicht einfach in die Registry ein unter

Code: Alles auswählen

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Warum verwendest du nicht einfach mein autostart Modul dazu? Funktioniert unter Windows und Linux (nach freedesktop.org "Desktop Application Autostart Specification") und ist etwas weniger abenteuerlich als dein Ansatz. ;)

...vielleicht sollte ich das Modul ja mal richtig veröffentlichen.

Jonas
[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

@veers
kannst du bitte mal grob beschreiben, wie du in deinem Modul vorgehst.
Bin auch gerade dabei, einen Autostart für mein Programm zu entwickeln. Deine Seite ist leider blockiert bei mir im Geschäft (reason: uncategorized...).[/quote]
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

ice2k3 hat geschrieben:Bin auch gerade dabei, einen Autostart für mein Programm zu entwickeln. Deine Seite ist leider blockiert bei mir im Geschäft (reason: uncategorized...).
Vielleicht geht ja der Mirror besser?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

Hat funktioniert, Danke.

Braucht man für den Linux-Teil spezielle Voraussetzungen?
Antworten