Timer alle 60 min LINK öffnen?

Link im Standardbrowser öffnen:
Visual Basic:
System.Diagnostics.Process.Start("http://www.google.de")

Einfach in das Timer.Tick-Eregnis schreiben, das Intervall des Timers auf 3.600.000 stellen und fertig. :)
 
process.start nur einmal ausführen lassen wie?

Es geht aber dieser prozess (process.start) wird andauernd hiereinander ausgeführt solange der zugeordnete wert besteht, wie kann ich diesen prozess nur einmal ausführen lassen:confused:
 
Eigentlich sollte es nur einmal ausgeführt werden.

Bist du sicher, dass du auch das richtige Intervall für den Timer eingegeben hast? (3.600.000)
 
Er meinte wohl:

3600000 (ohne Punktnotation)

codeman

EDIT:

Deswegen, weil das Intervall in Millisekunden angegeben werden muss.
1 sek = 1000 msek * 60 = 1 min * 60 = 1h --> 1h = 3600000 msek
 
Zuletzt bearbeitet:
Deswegen, weil das Intervall in Millisekunden angegeben werden muss.
1 sek = 1000 msek * 60 = 1 min * 60 = 1h --> 1h = 3600000 msek

Das Intervall müßte stimmen 1000 = 1 Sekunde.

Hier mein Code:

Code:
 Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        tmr1 = tmr1 + 1
        TextBox1.Text = tmr1

        If tmr1 = 10 Then
            a = a + 1
            tmr1 = 0
        End If
        If a = 60 Then

            b = b + 1
            a = 0
        End If
        If b = 60 Then

            c = c + 1
            b = 0
        End If
///////////////////Habe ich hinzugefügt\\\\\\\\\\\\\\\\\\\\\\\
        If b = 1 Then
            System.Diagnostics.Process.Start("http://www.www.de")
        End If//////////////////////////////////////////////////////////////////////////////////////////
        TextBox2.Text = a
        TextBox3.Text = b
        TextBox4.Text = c
    End Sub

Wenn b=1 ist steht in der zugeordneten Textbox auch die 1 also eine Minute und genau dann wird auch der Prozess (Process.Start(was auch immer)) ausgeführt aber er wird zu oft ausgeführt -> das Resultat im IExplorer öffnet sich diese seite die ganze zeit und ich glaube solange bis der b=1 Wert sich ändert also jede Minute soll die Webseite 1 mal geöffnet werden und nicht Unendlich mal.:eek:

Aber ich will das er die Seite bzw. den Prozess nur einmal solange b=1 ist, ausführt.

Für die Funktion (Process.Start) muss es doch eine Explizite ausführung geben?:confused:
 
So wie ich das auf die Schnelle sehe, musst du nach dem b das erste Mal 1 ist und du den prozess ausführst, b wieder einen anderen Wert zuweisen. Weil b eben 1 bleibt und somit immer der IF-Code ausgeführt wird.

Also etwa so:

Code:
' [...]
If b = 1 Then
            System.Diagnostics.Process.Start("http://www.www.de")
            b = irgendwas ' ...
End If
' [...]
 
Ja darauf bin ich auch gerade gekommen habs auch versucht ich hab den Wert gleich wieder null setzen lassen also b = 0 aber es bleibt der gleiche effekt.:eek:

Code:
  If b = 1 Then
            System.Diagnostics.Process.Start("http://www.www.de")
            b = 0
        End If

Also ich bin mir sicher das es , solange b = 1 ist das er dem entsprechend auch solange diesen Prozess ausführt bis der Wert sich ändert aber genau dann würde es ja wieder von vorne beginnen pro min dauernde Prozess starts dabei soll pro min nur einmal ausgeführt werden!:confused:
 
Hi

Ich denk du willst den Prozess alle 60 mins starten. Dann solltest du den Prozess auch auf 3600000 setzen (wie von Masterclavat und codeman geschrieben)
Für das sind die 3 kryptischen Variablen? willst du damit die Zeit anzeigen, bis zum nächsten Start, dann probier es man so:
C#:
public partial class FormMain : Form
    {
        public FormMain()
        {
            InitializeComponent();
            timer = new Timer();
            timer.Tick += new EventHandler(timer_Tick);
            timer.Interval = 1000;
            timer.Enabled = true;
            start = DateTime.Now;
        }

        void timer_Tick(object sender, EventArgs e)
        {
            TimeSpan span = DateTime.Now - start;
            string tmp = span.ToString();
            textBox.Text = tmp.Substring(0, tmp.LastIndexOf('.'));
            if (span.TotalMinutes == 60)
            {
                Process.Start("calc.exe");
                start = DateTime.Now;
            }
        }

        private Timer timer;
        private DateTime start;
    }
 
Also ich habe das jetzt mal getestet - wenn man b=0 setzt funktioniert das.
Vielleicht liegt es ja an der Website die du aufrufst?

codeman


Edit: Mist, da war wer schneller... :)
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück