myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Basistechnologien und allgemeine .NET-Klassen » Wie wöchentlichen/15min Termin bzw. Event ressourcenschonend realisieren?
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Wie wöchentlichen/15min Termin bzw. Event ressourcenschonend realisieren?

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
da_user da_user ist männlich
myCSharp.de-Mitglied

Dabei seit: 21.08.2008
Beiträge: 90
Entwicklungsumgebung: VS 2015 Comunity
Herkunft: nähe Regensburg


da_user ist offline Füge da_user Deiner Kontaktliste hinzu

Wie wöchentlichen/15min Termin bzw. Event ressourcenschonend realisieren?

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hi,

Kurzfassung:

Ich will in meiner Anwendung ein wöchentliches und ein 15min auftretendes Event haben. Ersteres also z.b. jeden Montag der Woche. Ich kenne bis jetzt leider nur die Timerklasse, welche in meinen Augen wohl eher ungeeignet dazu ist, insbesondere für ersteres.

Langfassung:
Mein zu schreibendes Programm soll ein BackUp-Dienst werden, der mich einmal die Woche daran erinnert, eine externe HDD einzustecken und auf diese dann selbsständig das BackUp durchführt. Wenn die Meldung weggeklickt wird, soll diese nach einer gewissen Zeit wieder auftauchen (Dazu dürfte aber wohl die Timerklasse auch reichen).
Ach ja: ein "Rechner war am Erinnerungstag nicht eingeschaltet" werde ich wohl durch eine einfache Kontrolle, wann das letzte BackUp durchgeführt wurde, abfangen können.

Viele Grüße
da_user

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von da_user am 04.04.2016 18:53.

Neuer Beitrag 04.04.2016 18:52 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Lars Schmitt Lars Schmitt ist männlich
myCSharp.de-Poweruser/ Experte

avatar-2240.jpg


Dabei seit: 11.10.2005
Beiträge: 2.223
Entwicklungsumgebung: Visual Studio 2013
Herkunft: Witten


Lars Schmitt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo da_user,

schau doch mal hier, das könnte man dafü doch gut gebrauchen

 https://github.com/kevincolyar/CronNET

Viele Grüße
Lars
Neuer Beitrag 04.04.2016 19:00 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 14.280
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Von was für einer Applikationen reden wir? App? Desktop? Web?
Ein Dienst im Sinne eines Windows Dienst; das klingelt ziemlich nach Schedule Tasks oder Quartz.NET

Schedule Task kriegste natürlich alles geschenkt...und ist relativ üblich.
Neuer Beitrag 04.04.2016 19:17 Beiträge des Benutzers | zu Buddylist hinzufügen
da_user da_user ist männlich
myCSharp.de-Mitglied

Dabei seit: 21.08.2008
Beiträge: 90
Entwicklungsumgebung: VS 2015 Comunity
Herkunft: nähe Regensburg

Themenstarter Thema begonnen von da_user

da_user ist offline Füge da_user Deiner Kontaktliste hinzu

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

@Lars Schmitt:
Danke schonmal!

@Abt:

Ähm, ist ne gute Frage. Keine App, kein Web. Und eigentlich kein klassisches Desktopprogramm. Das Programm soll in diesem "Infobereich" verschwinden, und sich gefälligst nur zeigen, wenn es was zu melden hat ;-)
Neuer Beitrag 04.04.2016 20:18 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 14.280
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Dann ist es trotzdem ein Service oder eine Desktapp ohne Fenster - technisch gesehen.
Daher würde ich sagen Schedule Tasks. Das einfachste und sicherste, da Systemfunktion.
Neuer Beitrag 04.04.2016 21:16 Beiträge des Benutzers | zu Buddylist hinzufügen
da_user da_user ist männlich
myCSharp.de-Mitglied

Dabei seit: 21.08.2008
Beiträge: 90
Entwicklungsumgebung: VS 2015 Comunity
Herkunft: nähe Regensburg

Themenstarter Thema begonnen von da_user

da_user ist offline Füge da_user Deiner Kontaktliste hinzu

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Dann lese ich mich mal da ein.

Danke!
Neuer Beitrag 05.04.2016 21:34 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
da_user da_user ist männlich
myCSharp.de-Mitglied

Dabei seit: 21.08.2008
Beiträge: 90
Entwicklungsumgebung: VS 2015 Comunity
Herkunft: nähe Regensburg

Themenstarter Thema begonnen von da_user

da_user ist offline Füge da_user Deiner Kontaktliste hinzu

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hi,

ein bisschen konnte ich mich jetzt in die Scheduled Tasks einlesen. Das wäre prinzipiell natürlich eine schönere Methode, da Windows ja hier schon alles mitliefert.

Was wir an den Beispielen bis jetzt auffällt: die starten immer ein Programm. Ich würde aber gerne ein Event innerhalb meines Programmes werfen. Bevor ich mich da jetzt noch weiter mit dn Scheduled Tasks auseinandersetze: ist mit diesen überhaupt das Event werfen möglich? Oder sollte ich mich lieber doch mit Cron.NET auseinandersetzen?
Neuer Beitrag 09.04.2016 16:34 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 14.280
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Natürlich kannst Du keinen Event werfen. Aber was machst Du, wenn Deine Anwendung nicht läuft oder abstürzt?
Wer sorgt dafür, dass diese startet? Dein Backup läuft nicht durch. Super. (und da hilft auch Cron.NET nicht).

Üblich wäre an dieser Stelle, dass der Schedule Task Deine Anwendung mit einem Parameter aufruft.
Beim Start Deiner Anwendung nimmst Du den Parameter entgegen und verarbeitest ihn.

Damit Du verhindern kannst, dass erstellst Du einen Mutex und prüfst, ob Deine Anwendung schon läuft.
Wenn ja, dann gibst Du den Parameter an die bereits gestartete Instanz und führst das Backup durch.
Fertig.
Neuer Beitrag 09.04.2016 17:20 Beiträge des Benutzers | zu Buddylist hinzufügen
ErfinderDesRades
myCSharp.de-Poweruser/ Experte

avatar-3151.jpg


Dabei seit: 31.01.2008
Beiträge: 5.290


ErfinderDesRades ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

hast du vlt. einen Link für sowas?
ich kenne es von VB.net, da gibts ein Applicatiion.StartupNextInstance - Event, mit dem Mehrfach-Starts "gejoint" werden können.
Für c# finde ich jetzt nichts dergleichen, nur recht komplizierte Diskussionen auf Stackoverflow geschockt

Ansonsten fände ich es für ein Backup-Programm evtl garnet schlecht, wenns ganz normal arbeitet - ohne Mutex, und halt vom Scheduler gestartet wird.

Das wäre dann ein kleines, vom MainProg ganz unabhängiges Hilfsproggi, und evtl. den Main-Prog-Code sogar noch entlasten, wenn diese Funktionalität da ganz ausgelagert ist.
Neuer Beitrag 09.04.2016 19:25 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 14.280
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Neuer Beitrag 10.04.2016 11:22 Beiträge des Benutzers | zu Buddylist hinzufügen
FZelle
myCSharp.de-Poweruser/ Experte

Dabei seit: 23.04.2004
Beiträge: 9.878


FZelle ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

@ErfinderDesRades:
StartupNextInstance ist kein exclusives Event von VB.NET das nicht auch in C# benutzt werden könnte.
 mehrere Programminstanzen verhindern?
Neuer Beitrag 10.04.2016 11:45 Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 4 Jahre.
Der letzte Beitrag ist älter als 4 Jahre.
Antwort erstellen


© Copyright 2003-2020 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 26.11.2020 04:12