Ich erstelle ein Programm in C++, die ich in der Lage sein, die Option haben Benutzer haben lassen Sie es automatisch in Windows starten lassen. Wenn ein Benutzer seinen Computer startet, startet Windows automatisch dieses Programm. Ich habe Sachen über das Ändern der Registrierung gelesen oder es in den Startordner gelegt, aber was wäre der beste "saubere" Weg, dies zu tun?Wie erstelle ich ein Autostart-C++ - Programm
Antwort
Startordner ist sauber genug.
Bietet dem Benutzer die Möglichkeit, es bei Bedarf zu entfernen.
bewusst sein, dass, wenn Sie Führen Sie so etwas aus, anstatt einen Dienst auszuführen, damit Ihre App besser von mehreren Benutzern gleichzeitig ausgeführt werden kann. – Eclipse
Ja, ich hasse es wirklich, wenn etwas automatisch startet und ich muss die Registry durchsuchen, damit es nicht wieder läuft. Einige Entwickler verhalten sich so, als ob sie Ihren Rechner besitzen. –
Je nachdem, ob Sie ein All-Benutzer oder pro Benutzer installieren sind ausführen, setzen Sie es in den Autostart-Ordner für alle Benutzer oder die pro-Benutzer-Startordner. Der Autostart-Ordner, den Sie im Menü sehen, ist der Zusammenschluss von beiden, aber Nicht-Admin-Benutzer können die Einträge aus dem All-User-Teil nicht entfernen.
Sie müssen dafür eigentlich nichts tun. Benutzer können Ihre normale Verknüpfung zum Startmenü selbst kopieren. Daher kann das beliebige Programm ein Autostartprogramm sein. Muss überhaupt nicht C++ sein.
Es gibt viele Möglichkeiten, eine Anwendung automatisch zu starten, aber die einfachste, am häufigsten und IMO am besten sind:
- Legen Sie eine Verknüpfung im Autostart-Ordner
- an die Registrierung einen Autostart-Eintrag hinzufügen (Software \ Microsoft \ Windows \ CurrentVersion \ Run)
Das Endergebnis ist das gleiche für beide. Ich glaube, der Registry-Weg wird früher im Anmeldeprozess als der Start Weg ausgeführt, aber ich bin mir nicht sicher. In den meisten Fällen macht das keinen Unterschied. Ich bevorzuge die Registrierung, aber das ist persönlicher Geschmack. Sie können den Registrierungsschlüssel oder die Verknüpfung programmatisch in Ihrer App erstellen und löschen.
Mit beiden Optionen können Sie entweder eine Einstellung für alle Benutzer (Alle Benutzer Startordner oder unter HKLM-Schlüssel in der Registrierung) oder benutzerspezifisch (Benutzer Startordner oder unter HKCR-Schlüssel) verwenden.
Im Allgemeinen ist es besser, die Optionen pro Benutzer zu verwenden, da Sie sicher sein können, Schreibrechte in diesen Bereichen zu haben; und jeder Benutzer auf dem Computer kann seine eigene Einstellung haben.
Sie können es als Windows registrieren service.You „Qt Solutions“ für leicht machen eine Anwendung als Windows-Dienst verwenden können. dieser Code
Ein Windows-Dienst entspricht in keiner Weise den Anforderungen des OP. Versuchen Sie, Antworten zu verfassen, die tatsächlich für das jeweilige Thema gelten. –
Er kann eine Stapeldatei erstellen, um eine Anwendung als Dienst bereitzustellen oder sie zu deimplementieren. – Qubeuc
Mit können Sie es
procedure TForm1.Button1Click(Sender: TObject);
var
Reg:TRegistry;
begin
Reg := TRegistry.Create;
try
Reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run',True);
Reg.WriteString('Program name',ParamStr(0));
finally
Reg.Free;
end;
end;
tun oder diese:
using Microsoft.Win32;
private void AddStartUpKey(string _name, string _path) {
RegistryKey key = Registry.LocalMachine.OpenSubKey(@"Software\Micros oft\Windows\CurrentVersion\Run", true);
key.SetValue(_name, _path);
}
private void RemoveStartUpKey(string _name) {
RegistryKey key = Registry.LocalMachine.OpenSubKey(@"Software\Micros oft\Windows\CurrentVersion\Run", true);
key.DeleteValue(_name, false);
}
Anstatt nur einen Codeblock zu veröffentlichen, bitte * erklären *, warum dieser Code das Problem löst. Ohne eine Erklärung ist dies keine Antwort. –
Auch sind keine von diesen C++. – immibis
- 1. OpenAL: Wie erstelle ich ein einfaches "Microphone Echo" -Programm?
- 2. Wie erstelle ich ein Plugin-fähiges Java-Programm?
- 3. Wie erstelle ich ausführbares Java-Programm?
- 4. Wie erstelle ich mein erstes OpenGL-Programm
- 5. Wie erstelle ich ein PDF?
- 6. Wie erstelle ich ein jqGrid
- 7. Wie erstelle ich ein Kartensymbol?
- 8. Wie erstelle ich ein Leinwandauswahlwerkzeug?
- 9. Wie erstelle ich ein Frühlingsprojekt?
- 10. Wie erstelle ich ein Sternenbewertungssystem?
- 11. Wie erstelle ich ein Singleton?
- 12. Wie erstelle ich ein Statusdialogfeld in Excel
- 13. Wie erstelle ich Tags in C/C++ - Programm
- 14. Wie erstelle ich ein benutzerdefiniertes Textbearbeitungs-Steuerelement?
- 15. Wie erstelle ich ein Meldungsfeld mit tkinter?
- 16. Schienen/Haml: Wie erstelle ich ein Postformular?
- 17. Wie erstelle ich ein Cocoa-Fenster programmgesteuert?
- 18. Wie erstelle ich ein Verzeichnis in Lua?
- 19. Wie erstelle ich ein wiederholbares Indexskript?
- 20. Wie erstelle ich ein Halbfenster-Ansichtsmenü?
- 21. WiX - Wie erstelle ich ein Unterverzeichnis?
- 22. Wie erstelle ich ein benutzerdefiniertes Outlook-Objekt?
- 23. Wie erstelle ich ein schwarzes UIImage?
- 24. Java - Wie erstelle ich ein benutzerdefiniertes Dialogfeld?
- 25. Wie erstelle ich ein Konfigurations-Skript?
- 26. Wie erstelle ich ein OpenGL Live Wallpaper?
- 27. Wie erstelle ich ein Highlight bei mouseover?
- 28. Wie erstelle ich ein serverseitiges zeitgesteuertes Ereignis?
- 29. C Präprozessor: Wie erstelle ich ein Zeichenliteral?
- 30. Wie erstelle ich ein Bild von UILabel?
diesen Link Siehe http://ask-leo.com/auto_start_how_do_i_run_a_program_automatically_when_windows_starts.html – Vinay