CronJob Simulation

René Paschold

Erfahrenes Mitglied
Hallo,

ich hatte das Problem das mein Web Provider mir keine CronJobs oder Tasks zur Verfügung stellte. Naja in der Not habe ich mir ein Programm geschrieben das in einem eingestellten Inerval eine URL aufruft.

Ich brauche das für folgenden Fall: Auf meiner Page schreiben leute was in die Datenbank. Mittles PHP prüfe ich jetzt ob was neues drin ist und wenn ja dann schicke ich mir über PHP eine Mail.

Mit meinem Programm rufe ich diese URL in einem bestimmten Zeitraum auf. Dachte mir ist für euch auch nützlich

Ist ein einfaches Programm mit einer XML Datei zur Konfiguration!

Es ist noch nicht ganz fertig... Deswegen noch Beta!

Über Feedback würde ich mich freuen!

Grüße
Fatility

PS: Der Link: http://www.magic-web.info/programs/callURL.zip

PPS: Das Programm ist in C# programmiert und benötigt somit das MS Framwork. Beim letzten XP SP war das schon dabei. Ansonsten müßt ihr es euch runterladen!

PPPS: Das Posting ist drei Tage sticky dann kommt es wieder weg!
 
Was kommt weg? Das sticky oder das Posting?

Also ich hab mal noch ne Frage, wäre spannend an den Code zu kommen. Denn ich weiss nicht, wie man XML ausliest. Und wie rufst du die Seite auf? Hast du den IExplorer als unsichtbare Komponente eigebaut?
 
PHP:
using System.Xml;

		private void Form1_Load(object sender, System.EventArgs e)
		{
			// xml daten einlesen
			try
			{
				XmlDocument doc = new XmlDocument();
				doc.Load("settings.xml");

				XmlElement root = doc.DocumentElement;

				string stdUrl = "", stdInterval = "";

				foreach(XmlNode setting in root.ChildNodes)
				{
					stdUrl		= setting["standardurl"].InnerText;
					stdInterval = setting["interval"].InnerText;
				} // foreach(XmlNode setting
				
				textURL.Text = stdUrl;
				textInterval.Text = stdInterval;
			} // try

			catch(Exception ex)
			{
				MessageBox.Show(ex.Message, "XML Fehler");
				this.Close();
			} // catch(Exception ex)	

		} // private void Form1_Load
 
Ich suche gerade noch nach einer besseren Art das XML File auszulesen da ich mir nicht sicher bin ob eine Schleife das richtig ist!

Xpath sollte woll ganz gut sein! Wenn ich mehr weiss poste ich es hier!
 
Mit dieser Funktion:

PHP:
		private void webURL(string url)
		{
			// url aufrufen
			try
			{
				WebClient wc = new WebClient();
				wc.DownloadData(url);

				counter++;
				statusBarPanelAnzahl.Text = "Anzahl der Scans: " + counter.ToString();
				statusBarPanelLast.Text = "Letzer Scan um: " + DateTime.Now;
			} // try

			catch(WebException ex)
			{
				MessageBox.Show(ex.Message, "Fehler beim ausführen");
				timer.Stop();
				btnStart.Enabled = true;
				btnStop.Enabled = false;
			} // catch(WebException ex)
		} // private void webURL
 
Zuletzt bearbeitet:
Original geschrieben von Fatility
Ich suche gerade noch nach einer besseren Art das XML File auszulesen da ich mir nicht sicher bin ob eine Schleife das richtig ist!

Xpath sollte woll ganz gut sein! Wenn ich mehr weiss poste ich es hier!

hoi Fatality ..

falls es dich interessiert,
ich lese meine XML-Dateien so aus:
Code:
		private void LoadActions()
		{
			DataSet ActionDS = new DataSet();
			FileStream XSchema = new FileStream("data/actions.xsd",FileMode.Open, FileAccess.Read,FileShare.Read);
			ActionDS.ReadXmlSchema(XSchema);
			XSchema.Close();

			FileStream XData = new FileStream("data/actions.xml", FileMode.Open, FileAccess.Read,FileShare.ReadWrite);

			ActionDS.ReadXml(XData);

			XData.Close();

			foreach(DataRow dr in ActionDS.Tables[0].Rows)
			{
				addAction((string)dr["trigger"], (string)dr["output"], (bool)dr["isAction"]);
			}
			
		}


mfg,
crazy-weasel
 

Neue Beiträge

Zurück