Frage

Ich möchte meine C # Anwendung nach Windows-Benutzer-Login und vor Windows-Desktop erscheint laden. zur Zeit hinzugefügt ich meine Anwendung Startpfad laufen Schlüssel zur Registrierung. es lädt meine Anwendung korrekt aber Windows Windows-Desktop erscheint [2 sec] dann meine Anwendung läuft

Hinweis:

Meine Anwendung erstellt separaten Desktop mit winapi, während meine Anwendung läuft es auf den Desktop vorübergehend versteckt.

Keine korrekte Lösung

Andere Tipps

Das ist wirklich nicht möglich zu tun. Windows funktioniert ziemlich hart auf den Desktop und Explorer reagiert, so bald, nachdem der Benutzer sich anmeldet zu bekommen. Das ist das, was für den Anwender am wichtigsten ist.

Ihre Ziele können edel sein, aber sie sind im Widerspruch mit dem, was Nutzer wollen. So im Allgemeinen, sind sie im Widerspruch zu, wie Windows funktioniert (insbesondere Win-7).

Wenn Sie Software, die früh ausgeführt werden muss, die nicht mit dem Benutzer interagieren muss, dann ist ein Service ist, dass sie Weg zu gehen. Es ist wichtig, dass in Vista und später Windows-Systemen zu beachten, gibt es keine Möglichkeit für einen Service mit dem Benutzer zu interagieren - z.B. sie können nicht ihre eigene grafische Benutzeroberfläche. Dienstleistungen mit UI sind von Natur aus nicht sicher.

Eine Möglichkeit, Ihre Software zu partitionieren ist es, einige Dinge in einem Dienst zu stellen, und eine Think UI-Schicht oben drauf hat. COM und lokale RPC sind eine gute Wahl für die Kommunikation zwischen Ihren Service und Ihre UI-Ebene.

Beachten Sie, dass Sie benötigen, um Arbeit hier zu tun, um Ihre Komponenten zu verhindern, dass Boot zu verlangsamen. Schlecht verhalten Anwendungen sind eines der größten Probleme in der Startpfad. Sie können diese Studie mit dem von Windows Performance Toolkit

Es ist irgendwie möglich glaube ich, aber Sie sind wirklich in einer Menge zusätzlicher Arbeit. Was Sie tun können, ist das Windows-Shell mit Ihrem eigenen Code ersetzen, aber an diesem Punkt werden Sie allein verantwortlich für die Benutzeroberfläche, die der Benutzer interagiert mit.

Wenn Ihr Code ist nicht ‚gerade richtig‘, können Sie mit einer unbrauchbaren Windows-Ende installieren, und ich bin nicht sicher, dass die Benutzer gehen, dass viel zu schätzen.

Beachten Sie auch, dass es möglicherweise Funktionen, die Sie normalerweise intuitiv auf einem Windows-Rechner zur Verfügung stehen erwarten, dass ein Teil der Schale ist, die Sie keinen Zugriff auf mehr haben werden. Einzelheiten versuchen http://en.wikipedia.org/wiki/Windows_shell_replacement als Ausgangs Punkt.

Nachtrag :
Ich habe nur das leiseste Wissen über mich selbst, was technisch tatsächlich beteiligt ist, damit dies geschieht, aber http: // dustyant. com / articles / deeshell / scheint eine anständige Erklärung der Grundlagen zu sein. Wieder tho ... hier Drachen sicherstellen, dass Sie dies in einer VM oder etwas tun, damit Sie Ihre Haupt-Installation von Windows am Ende nicht zu stopfen.

Nur kurz, was ‚Shell-Ersatz‘ bedeutet: nach der Anmeldung, Fenster eine Anwendung startet namens ‚Explorer‘ (nicht sicher, ob dies gilt noch für Vista / Win 7 ... Ich habe eine vage Erinnerung es ein wenig mehr bekam vor kurzem) beteiligt, die im Grunde den Desktop zieht, die Taskleiste, usw. ... ist es möglich, Windows zu sagen, eine andere Anwendung anstelle des Standard grafisch Shell zu starten. An diesem Punkt sind Sie in der Steuerung des Haupt-UI von Windows ... was bedeutet, dass Sie verantwortlich für alles, was Windows normal in der Shell macht ... gibt Ihnen viel Kontrolle und Flexibilität, und möglicherweise eine Menge Kopfschmerzen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top