novedad
Goto Top

VB Uhrzeit abfragen und verarbeiten

Hallo

Hab mich jetzt endlich dazu entschlossen VB zu lernen und schon stehe ich vor dem ersten Problem

Ich habe vor innerhalb eines Programmes die Zeit abzufragen und weiterzuverarbeiten

Die Zeitabfrage geht mit "TimeOfDay"

Am besten schreibe ich das mal so wie ich mir das vorstelle

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       Shell("at (Zeitabfrage TimeOfDay ?) /interactive Befehl", AppWinStyle.NormalFocus)  

Um einen Job zu starten muss ich ja die aktuelle Zeit + min. 1 Minute angeben

Geht das mit "AddMinute"

Wenn ja wie?

Sorry aber ich bin noch totaler Newbie auf dem Gebiet

mfg novedad

Content-Key: 148163

Url: https://administrator.de/contentid/148163

Printed on: April 24, 2024 at 20:04 o'clock

Member: bastla
bastla Aug 02, 2010 at 17:53:27 (UTC)
Goto Top
Hallo novedad!

Würde ich so machen:
DateAdd(DateInterval.Minute, 1, TimeOfDay)

[Edit]
TimeOfDay.AddMinutes(1)
funktioniert auch (war mir nicht geläufig, da ich vor allem VBScript schreibe) - warum Du es allerdings nicht schon selbst versucht hattest, verstehe ich nicht so ganz ...
[/Edit]

Grüße
bastla

P.S.: Und ja, das ging auch schon mit VB2005 - trotzdem wäre es sinnvoll, die verwendete Version anzugeben ...
Member: novedad
novedad Aug 02, 2010 at 18:12:14 (UTC)
Goto Top
Dankeschön!

Beide Methoden funktionieren

Hab es noch nicht selbst versucht weil ich wiegesagt erst mit VB anfange und zwischen VB und VBS besteht ja schon einiger Unterschied

Nun wöllte ich nur noch gern wissen wie ich das ganze in die Shell zu dem "at" - befehl packen kann oder ober ob es dafür in VB einen "Ersatz" gibt

Und: Ich verwende VB2008 Express
Sorry hatte ich vergessen

mfg novedad
Member: bastla
bastla Aug 02, 2010 at 18:23:06 (UTC)
Goto Top
Hallo novedad!
Hab es noch nicht selbst versucht weil ich wiegesagt erst mit VB anfange
Aber gerade durch Probieren lernst Du - und zusätzlich hast Du noch die Unterstützung in der IDE: Wenn Du zB "TimeOfDay" und danach den Punkt eingibst, wird Dir ja schon eine (in diesem Fall ziemlich umfangreiche) Auswahl an Methoden und Eigenschaften geboten; wenn Du Dich dann für "AddMinutes" (gefunden hattest Du die ja schon) entschieden und per TAB-Taste übernommen hast, kannst Du wieder einfach durch Eingabe der öffnenden Klammer Unterstützung erhalten ...
wie ich das ganze in die Shell zu dem "at" - befehl packen
Strings lassen sich wie in VBS aus Konstanten (unter Anführungszeichen) und Variablen kombinieren, indem die Einzelteile per "&" verbunden werden.

Grüße
bastla
Member: Biber
Biber Aug 02, 2010 at 19:25:56 (UTC)
Goto Top
Moin novedad,

da ich mich als bekennender VB-Newbie sicherlich besser in deine Situation hineindenken kann
noch ein, zwei allgemeine Tipps zum Thema "Mit-dem-Werkzeug-vertrauter-werden".

Zitat von @novedad:
Nun wöllte ich nur noch gern wissen wie ich das ganze in die Shell zu dem "at" - befehl packen kann
oder ober ob es dafür in VB einen "Ersatz" gibt
Nein, gar nicht wahr.

Du hattest vollkommen ohne irgendwelches Oder-Rumgezippel angefangen, nämlich mit diesem Plan:
Um einen Job zu starten muss ich ja die aktuelle Zeit + min. 1 Minute angeben

So... und damit sind wir erst halb fertig.
Du hast jetzt die (manipulierte) Uhrzeit in einer Variablen. Weiter sind wir noch nicht.

Du hast es als TimeOfDay.... aber du brauchst es als formatierten String innerhalb eines längeren Strings.
Und zwar mit relativ wenig Spielraum...
...
für ein ganz, ganz schmalbrüstiges AT-Kommandochen, das nur sehr gebrochen englisch und fast noch weniger deutsch spricht.
--> das ziehen wir jetzt auch durch... keine Allmachtsphantasien mit "Können wir nicht gleich einen Taskplaner nachprogrammieren?"

Bislang bist du knapp über die Hürde, an der bastla gezeigt hat, dass sich irgendwie drei VB-Puzzleteile auf zwei verschiedene Arten zusammenstecken lassen.

Steigere das Tempo lieber langsam.

Grüße
Biber
Member: novedad
novedad Aug 02, 2010 at 19:31:44 (UTC)
Goto Top
hab es jetzt so

Shell("at" & TimeOfDay.AddMinutes(1), AppWinStyle.NormalFocus)  

doch jetzt kommt die Fehlermeldung "Die Datei wurde nicht gefunden"

Was mache ich falsch?
Bitte um Hilfe

mfg novedad
Member: Biber
Biber Aug 02, 2010 at 19:38:14 (UTC)
Goto Top
Moin novedad,

"Die Datei wurde nicht gefunden"
Hmmm, wem genau hast denn aufgetragen, was genau er/sie/es wo suchen soll.

Grüße
Biber
Member: novedad
novedad Aug 02, 2010 at 19:49:02 (UTC)
Goto Top
Ich habe niemand aufgetragen irgendwas irgendwo zu suchen
Ich will über den Shell den Befehl "at" ausführen (was ja soweit auch klappt) und diesen dann wie bastla es gezeigt hat durch "&" mit "TimeOfDay.AddMinutes(1)" verknüpfen. Nur scheint er das als Dateinamen zu definieren und sucht nun danach und folglich kann sie nicht gefunden werden
Member: bastla
bastla Aug 02, 2010 at 21:47:32 (UTC)
Goto Top
Hallo novedad!
Ich habe niemand aufgetragen irgendwas irgendwo zu suchen
Genau auf dieses Versäumnis wollte Biber Dich aufmerksam machen ...

... oder mit anderen Worten: Was soll denn wohl in einer Minute passieren?

Dein erster Ansatz (ganz weit oben) war zwar auch nicht sonderlich konkret, aber zumindest vollständig ...

Grüße
bastla

P.S.: Noch zwei Tipps:
  • Wer in (zusammengesetzten) Strings Leerzeichen haben will, muss sich selber darum kümmern.
  • Es hat sich bewährt, den Befehl für einen "Shell"-Aufruf vorweg komplett in einer Variablen zusammenzusetzen - die kann dann nämlich zu Debugging-Zwecken ausgegeben oder anderweitig kontrolliert werden ...