Laden...

Forenbeiträge von Homeros Ingesamt 10 Beiträge

03.07.2016 - 12:51 Uhr

Ah okay. Dann machen die 2h Sinn.
Dann werde ich DateTime.UTCNow berücksichtigen.

Vielen Dank!

03.07.2016 - 11:52 Uhr

Hallo Leute,
ich würde gerne die Systemzeit anpassen, dafür gibt es viele Beispiele und ich habe auch die meisten ausprobiert, aber es will einfach nicht klappen... ein kleines Beispiel:


private void button1_Click(object sender, EventArgs e)
{
    DateTime localDate = DateTime.Now;
    TimeSpan duration = new System.TimeSpan(0,10,0);
    System.DateTime answer = localDate.Subtract(duration);
    SetzeSystemzeit(answer);
}
[DllImport("kernel32.dll", SetLastError = true)]
static extern bool SetSystemTime(ref str_Zeit neueZeit);
struct str_Zeit
{
    public ushort Jahr;
    public ushort Monat;
    public ushort TagInDerWoche;
    public ushort Tag;
    public ushort Stunde;
    public ushort Minute;
    public ushort Sekunde;
    public ushort Millisekunde;
}
public void SetzeSystemzeit(DateTime neueZeit)
{
    str_Zeit Zeit = new str_Zeit();
    Zeit.Jahr = (ushort)neueZeit.Year;
    Zeit.Monat = (ushort)neueZeit.Month;
    Zeit.TagInDerWoche = (ushort)neueZeit.DayOfWeek;
    Zeit.Tag = (ushort)neueZeit.Day;
    Zeit.Stunde = (ushort)neueZeit.Hour;
    Zeit.Minute = (ushort)neueZeit.Minute;
    Zeit.Sekunde = (ushort)neueZeit.Second;
    Zeit.Millisekunde = (ushort)neueZeit.Millisecond;

    SetSystemTime(ref Zeit);
}

Damit müsste meine Systemzeit 10min zurückgesetzt werden, aber dies passiert nicht. Sondern es werden 1h 50min drauf gerechnet.... nun vermute ich die Zeitverschiebung, aber die besträgt ja in Deutschland nur +1h UTC.. also irgendwie unlogisch für mich.
(in "ref Zeit" steht in übrigen die Zeit die haben möchte.)

Könnt ihr mir etwas auf die Sprünge helfen?

Vielen Dank!
LG Homeros

19.05.2016 - 09:47 Uhr

Vielen Dank!

Bei PC's wo ich nicht die Möglichkeit habe diese Einstellung zu ändern, kann ich da Überprüfen ob Verbindungen frei sind und vllt sogar wie viele?
Dann würde ich das vorher immer prüfen, falls keine Verbindungen frei sind eine Zeit warten und nochmal prüfen.

18.05.2016 - 09:15 Uhr

Guten Morgen,
ich hoffe ihr könnt mir weiterhelfen.
Ich arbeite an einem Programm, was grob gesagt Daten von einen Netzlaufwerk heraussucht und verarbeitet. Dieses Netzlaufwerk ist manchmal ein "echter" Server und manchmal einfach ein PC(Windows 7) , der als Laufwerk eingebunden ist.

Nun bekomme ich sehr sehr selten diese Fehlermeldung:> Fehlermeldung:

Es können keine weiteren Verbindungen zum Remotecomputer hergestellt werden, da bereits die maximale Anzahl der Clients mit diesem Computer verbunden ist.

Die Fehlermeldung tritt bisher immer an diesen Stellen auf:

foreach (System.IO.DirectoryInfo f in ParentDirectory3.GetDirectories().OrderBy(d => d.Name)){…}

files_check = Directory.GetFiles(@Pfad + "//" + itemChecked + "//" + f.Name.ToString(), ".", SearchOption.AllDirectories);

Also bisher nicht einmal wenn ich Dateien öffnen möchte (vermutlich Zufall?), sondern nur beim erfassen der Verzeichnisstruktur (Der Fehler tritt vllt alle 1000 Lesevorgänge auf).

Habt ihr vllt eine Idee, wie ich diesen Fehler vermeiden kann oder wo genau das Problem liegt?

Vielen Dank!

VG
Homeros

24.06.2015 - 21:27 Uhr

Hallo Leute,
ich würde mein Programm gerne auch beenden können wenn es arbeitet, leider kann ich während der Verarbeitung von Daten nichts drücken. 😦

Wie löst man sowas?

Vielen Dank!

LG Homeros

17.06.2015 - 16:44 Uhr

Vielen Dank für eure Hilfe!

Ich habe noch etwas darüber gegrübelt.
Also das was mir noch einfällt, ich habe ich immer die gleiche Seite, kann ich mir nicht 1x den Quelltext runterladen (und fest im Programm abspeichern), diesen "ausfüllen" und dann das an die Seite senden?
So müsste ich nur gucken was zurück kommt.
Geht sowas? Und wenn ja, womit mache ich das?

@MrSparkle: Die Seite hat Frames, aber ist selbst kein Frame. Sprich ich muss die URL aufrufen. 😕
Ne, eine Suchmaschine war nur ein bsp.,ich dachte das funktioniert überall gleich. >.<

16.06.2015 - 22:04 Uhr

Ich denke Geaz hat recht. 😦 Das DocumentCompletedEvent wird öfters aufgeführt...wegen inframe usw.

Ist es nicht möglich, die Seite zu laden und wenn sie komplett da ist (wie gesagt nach 5sek warten oder so), sie auszulesen und meine Befehle abzusetzen... dann nochmal warten und den Quelltext von der neuen Seite auszulesen?

Kennt ihr vllt noch einen anderen Ansatz, den ich mir ansehen kann?

16.06.2015 - 18:41 Uhr

Erstmal vielen Dank! 😃

Ich habe das jetzt wie folgt geschrieben:


   public Form2(string text)
        {
            InitializeComponent();
            webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(DocumentCompleted); //1)Handler registrieren
            webBrowser1.Navigate(url); //2) zur Seite navigieren
}
       private void DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            webBrowser1.DocumentCompleted -= new WebBrowserDocumentCompletedEventHandler(DocumentCompleted); //3)den Handler sich selbst deregistrieren lassen
            webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(DocumentCompleted2);//4)den Handler einen anderen registrieren lassen
            webBrowser1.Document.GetElementById("suche").SetAttribute("value", Form1.text);
            webBrowser1.Document.GetElementById("suchestart").InvokeMember("Click");   //5)Formular abschicken
        }
        private void DocumentCompleted2(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            Form1.TEXTBOX2text = webBrowser1.DocumentText; //6)Weitergabe des Quelltextes
            Close();
        }

Leider geht das nicht. 😕
Ist das so wie du dir das vorgestellt hast?

Ergebnisse werden nicht nachgeladen und mir reicht auch die erste Seite.

Und ja genau so ist es bisher, ein Glücksspiel, machmal geht es manchmal nicht, dass kenne ich sonst nicht vom Programmieren. 😒

16.06.2015 - 17:44 Uhr

Also wenn ich das so setze:

[...] 
webBrowser1.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(DocumentCompleted);
            webBrowser1.Navigate(url);
[...]

Geht es leider garnicht mehr 😕

So geht es ca. jedes dritte mal:

    webBrowser1.Navigate(url);
            System.Threading.Thread.Sleep(2500);
            webBrowser1.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(DocumentCompleted);
             System.Threading.Thread.Sleep(2500);

Ich verwende meine eigene Seite zum testen dafür, also ich werde auf keinen Fall ausgesperrt. 😃

VG

16.06.2015 - 16:55 Uhr

Hallo Leute,
ich hoffe ihr könnt mir weiterhelfen.

Ich möchte eine Seite (Suchmaschine) ansteuern, etwas suchen und das Ergebnis auswerten... dann folgt der nächste Suchbegriff.

Nun habe ich ein Problem, das ganze funktioniert nur manchmal.
Habe schon viel mit Application.DoEvents() & Thread.Sleep(; rumprobiert, aber so richtig will das ganze nicht.

Grundidee:
Aus einer Form wird eine Form mit webBrowser aufgerufen und den Suchbegriff übergeben usw:


 public Form2()
        {
            InitializeComponent();
 webBrowser1.Navigate(url);
webBrowser1.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
        Form1.TEXTBOX2text = webBrowser1.DocumentText;

//Damit ich das Fenster auch wieder alleine zu bekomme:
        System.Windows.Forms.Timer t1 = new System.Windows.Forms.Timer(); 
        t1.Interval = 6000;
        t1.Tick += new EventHandler(t1_Tick);
        t1.Start(); // Timer starten
}
//Hier springt er ganz oft gar nicht hin. :(
     private void webBrowser1_DocumentCompleted(object sender,
            WebBrowserDocumentCompletedEventArgs e)
        {
            webBrowser1.Document.GetElementById("suche").SetAttribute("value", Form1.text);
            webBrowser1.Document.GetElementById("suchestart").InvokeMember("Click"); 
        }
public void t1_Tick(object sender, EventArgs e)
        {
Close();
        }

Kann mir da jemand weiterhelfen?
Ich will eigentlich einfach, dass die Seite 5Sek zum laden Zeit hat, dann alles aufgefüllt wird, abgeschickt. Wieder kurz gewartet und dann der Quelltext gespeichert.
Eigentlich ja ganz simpel, aber ich komme nicht drauf.

Vielen Dank!
VG