Beiträge von Jac de Lad

    Hallo,
    ich hab folgendes Problem: Ich will übers Internet mit verschiedenen Rechnern auf meinen FTP-Server zugreifen. Dazu nutze ich, passend zum Router, tplinkdns.com. Das funktioniert von mir zuhause aus, mit meinem Handy, aber nicht bei meiner Bekannten, die übrigens auch einen TP-Link-Router hat. Bei Eingabe der IP klappt es von überall (aber das ist ja nicht Sinn der Sache). Es klappt auch, wenn ich meinen SPDyn-Account nutze, den kann ich aber nicht automatisch über meine neue IP informieren lassen. Die Weite "tplinkdns.com" ist natürlich nicht erreichbar, Einstellungen gehen nur über den Router und dort kann ich nur eine Domain registrieren. Kann mir jemand weiterhelfen?


    Nachtrag: No-IP klappt auch problemlos, es scheint wirklich nur bei tplinkdns nicht zu gehen.

    Ichbfibde es nicht gut, auch auf eigene DLLs zurückgreifen zu dürfen. Es geht ja um XProfan. Aber ich will den Thread nicht mit einer Diskussion vollmachen, vielleicht kann/sollte das ein Admin aufräumen.

    Hi Leute,
    ich hab auf Arbeit jetzt meinen ersten Auftrag für ein Programm bekommen. Mein erstes, inoffizielles Programm kam so gut an (auch bisher mein größtes Projekt), dass ich jetzt ein statistisches Analysetool schreiben soll.
    Wie auch immer, dafür habe ich in XProfan begonnen, aber ich musste recht schnell feststellen, dass die schiere Menge von Berechnungen so umfangreich ist, dass XProfan da zu langsam sein wird. Da ich schon länger PureBasic lernen sollte habe ich jetzt damit angefangen und das was ich schon fertig hatte erfolgreich umgeschrieben. Bisher habe ich mir mit einer Mischung aus XProfan plus PureBasic (DLL für mein letztes Projekt), ASM (kann ich selber nicht, aber da hat mir Volkmar geholfen) und Delphi (vielleicht kennt noch jemand meine Parcival.dll, auf die ich nicht ganz unstolz bin) geholfen. Da ich kein professioneller Programmierer bin oder werden will habe ich mich für PureBasic entschieden. Der Einstieg ist recht leicht und viel wissen kann man aus XProfan mit rübernehmen.


    Warum schreibe ich das? Ich will meine neuen Projekte zukünftig in PureBasic verfassen. Das soll aber nicht heißen, dass ich hier aufhöre. Eigentlich will ich gern bei beiden communities dabei bleiben und es spricht ja auch nichts dagegen. Es heißt aber im Gegenzug, vor allem jetzt, wo ich mich noch einarbeite und das Projekt für meine Arbeit angehe, dass ich meine XProfan-Zeit erstmal stark reduzieren werde. Ich denke das eine oder andere konnte ich beitragen, auch wenn ich manchmal total auf dem Schlauch stand. Die Überarbeitung der XProfan-Hilfe, übrigens in HTML, also wieder eine andere Sprache, hihi, Stelle ich erstmal hinten an. Ich glaube auch, das ist kein großer Verlust. Das Tool zur Quellcode Analyse werde ich auch erstmal nicht weiter bearbeiten, aber wer weiß...


    Aber! Das ist kein Abschied. Ich werde weiter hier im Forum sein und versuchen zu helfen (obwohl mir immer ein oder zwei Leute zuvorkommen), wenn XProfan X5 kommt bin ich sofort dabei!!! Wenn es ein Problem mit einer meiner Incs gibt oder jemand einen Wunsch hat, werde ich das auch schnellstmöglich dazwischenschieben. Und vielleicht können wir alle davon profitieren, vielleicht springt da dir eine oder andere DLL raus.


    In diesem Sinne: Ein Hoch darauf, dass sich eigentlich gar nichts ändert! Und bis morgen.

    Hallo @gimmix, je nachdem was du benötigst kann ich dir auch meine listview.inc empfehlen. Gibt's hier im Forum. Die DLL und die Inc haben verschiedene Möglichkeiten: Mit der DLL kannst du zum Beispiel Zeilen einfärben, das kann die Inc nicht. Dafür kann die Inc Kacheln darstellen. Mit etwas Geschick kannst du auch das Beste aus beiden herausholen.

    Aufruf:
    AddFilesASync S,N1[,N2[,N3]]


    Entweder mit 2 Parametern wie bei AddFiles, oder mit einem dritten Parameter als Handle einer Gridbox/ListBox etc., die die Ergebnisse aufnimmt. Es ist auch ein dritter Parameter möglich (0=kein Einfluss, 1=Neuzeichnen des Handles von N2 nicht verändern, 2=Rückgabe der Ergebnisse als String (dann wird N2 ignoriert)).

    Mir ist gerade noch ein Fehler aufgefallen, die Zeilen

    Code
    sendmessage(liste&,$B,0,0)

    und

    Code
    sendmessage(liste&,$B,1,0)

    müssen raus bzw. vor/nach


    Code
    Move("ListToHandle",Liste&)

    rein. Vielleicht kann das ein Moderator ändern.


    Ein weiterer Schwachpunkt ist, dass die Anzahl der Ergebnisse nicht über 252144 liegen darf. Gegebenfalls muss man den Code weiter anpassen.


    Anmerkung: Ich habe den Code gerade etwas modifiziert und auf Arbeit ausprobiert. Ich habe an 7 Orten im Netzwerk insgsamt 603423 Dateien finden lassen. Der Originalcode mit aufeinanderfolgenden Suchen braucht etwa 57 Sekunden. Mit parallelen Suchen waren es nur noch etwa 21 Sekunden. Natürliche ist Reihenfolge der gefundenen Dateien dann anders. Da ist jeder selbst dafür verantwortlich den Code anzupassen. Ich stelle morgen eine finale Version mit optionalem dritten Parameter hier rein, der ein Grid oder eine GridBox sein kann, damit der Überlauf bei Element 252145 nicht stattfinden kann.

    Ich hab mich mehr geärgert, dass du den Code kritisierst ohne ihn probiert zu haben. Aber das Thema ist durch, auf zum nächsten.


    Neue Proc "AddFilesASync". Sie funktioniert wie "AddFiles" inklusive Modus. Mehrere Aufrufe werden mit dem Listentrennzeichen getrennt. Die Proc achtet auch darauf, dass eventuell schon vergebene UserMessages wiederhergestellt werden. Das Programm hält nicht an während die Suchvorgänge durchgeführt werden, aber die Proc selbst übernimmt die Kontrolle bis alle Vorgänge beendet sind. Eine wirklich asynchrone Funktion muss man dann selbst anpassen und tief ins Programm einbinden. Für Verbesserungsvorschläge bin ich natürlich offen.

    Heinz, jetzt bin ich sauer. Hast du den Code mal ausprobiert? Natürlich mit angepassten Suchpfaden?


    Message $1000 sendet das Zielfenster und die benötigte Größe. Die werden in der Liste gespeichert, weil die nächste Message auch eine $1000 sein kann und die nicht verloren gehen kann. Dann wird die Liste nacheinander abgearbeitet. Message $1001 geht zurück an den Client, deshalb das Handle wieder mit GetString auslesen. Kein Murks und keine Zauberei. Message $1002 vom Clienten zeigt den Host, dass er den String übertragen hat.


    Message an Prozess funktioniert nicht, das habe ich probiert. Bei mir funktioniert mein Programm einwandfrei, egal wie viele Suchvorgänge ich simultan starte.

    Geiler Scheiß. Nur leider lässt sich das nur sehr schwer eine allgemeine Funktion basteln:

    Probiere ich alles mal am Montag Abend aus. Da kann ich auch mal einen Test laufen lassen um zu ermitteln wie groß die Maps nach meiner Methode sein müssen. Mit Message und dann punktgenau allokieren ist natürlich viel eleganter.