Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

mtbf40

Addict
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von mtbf40

  1. DANKE... aber siehe next Post...
  2. nein das ist es nicht... es liegt wieder mal im Detail versteckt und zwar im Buffer SendMessageA(label, WM_GETTEXT, 10, labT); SendMessageA(hWnd, WM_GETTEXT, BufferSize, Var); ...der war einfach zu gross gewählt - die erste Länge ist 5 die zweite 4 - macht 9 und meine Size war 10 - d.h. die ersten Daten sind wahrscheinlich nach hinten geschoben wurden weil ja Platz im Buffer ist habe jetzt vor WM_GETTEXT das gesetzt len = SendMessageA(label, WM_GETTEXTLENGTH, 0, 0); SendMessageA(label, WM_GETTEXT, len+1, labT); jetzt geht es...
  3. ... heute habe ich mal ein mql4 Rätsel für die Profis... init { ... get_val_from_EO_wnd(childWND); } double get_val_from_EO_wnd(int hWnd) { string cName = "012345678901234567890123456789"; int dialog, edit, label; string eo[1]; dialog = GetWindow(hWnd, GW_CHILD); GetClassNameA(dialog, cName, 30); string edVal = " "; string labT = " "; if (cName == "#32770") { edit = GetDlgItem(dialog, CID_EDIT); SendMessageA(edit, WM_GETTEXT, 10, edVal); eo[0] = edVal; log("############"); log("edVal_0="+edVal); // edVal = ""; //log("edVal_1="+edVal); //log("edValue_1="+eo[0]); log("-----------"); dialog = GetWindow(hWnd, GW_CHILD); GetClassNameA(dialog, cName, 30); label = GetDlgItem(dialog, CID_LABEL); SendMessageA(label, WM_GETTEXT, 10, labT); eo[1] = labT; } log("edVal="+edVal); log("labT="+labT); log("eo[0]="+eo[0]); log("eo[1]="+eo[1]); return; } Ergebnis der Ausgabe: DebugView [3112] ############ [3112] edVal_0=0.10 [3112] ----------- [3112] edVal=Lot [3112] labT=Lot [3112] eo[0]=Lot [3112] eo[1]=Lot Lass ich das mit dem Array weg stehen die korrekten Werte in den Variablen <edVal> und <labT> Wie bekomme ich nun die Wert <0.10> in eo[0] und den Wert <Lot> in eo[1] kann mir einer erklären was da abgeht????? Der Dialog ist egal - Haupsache ein Label und eine Edit-Box
  4. mtbf40 antwortete auf mtbf40's Thema in Coders Helpdesk
    zum debuggen benutze ich <OutputDebugString> - ist ganz praktisch ...einen TradeManager - mit dem ich meine Trades überwachen und vor allem auswerten kann. Der erste Schritt ist das initialisieren, d.h. wenn ich Trades eröffnen will zeigt er mir verschieden Werte an - siehe Anhang Was ich am Ende will ist ein Tool zum auswerten aller Trades von verschiedenen Accounts (Brokern) ... und vielleicht noch ein paar Dinge mehr
  5. mtbf40 antwortete auf mtbf40's Thema in Coders Helpdesk
    Hallo, hat schon mal jemand einen Erfolg erziehlt und mit <GetDlgItemText> einen Wert aus einer Edit Box bekommen? procedure winDlgTest.DoRun; var Msg: String; Buffer1: Array[0..20] of Char; Buffer2: Array[0..255] of Char; wnd, txt,Text: integer; begin { 1838012 - WinHandle (Window Class #32770) 1127 - ID von Edit Box } wnd := GetDlgItem(1838012,1127); -> erhalte Wert txt := GetDlgItemText(wnd, 1127, Buffer1, 256); {-> kein Wert} txt := GetDlgItemText(1838012, 1127, Buffer1, 256); {-> kein Wert} Text := GetWindowText(wnd,Buffer2, 256); Msg := Buffer2[0]; Terminate; end;
  6. mtbf40 antwortete auf mtbf40's Thema in Coders Helpdesk
    naja, das kommt davon, wenn man Software übernimmt, diese dann anpasst und bei dem Rest nicht genau hinschaut oder durchblickt - RAiNWORM hat nämlich einen Parameter bei dem die Länge der Daten bestimmt wird... und meine Daten waren einfach länger und so wurde der Rest glatt "abgeschnitten"
  7. das finde ich einen entscheidenden Punkt für die Auswahl einer Software, wenn man "sehr" nah an die Entwickler herankommt. Absolut spitze finde ich, wenn dann die Verbesserungsvorschläge bzw. Änderungswünsche "zeitnah" eingearbeitet werden - natürlich vorausgesetzt diese machen Sinn!! Dieser Punkt ärgert mich z.B. bei ProRealtime sehr - die entwickeln lieber 3D-Candle als einige sinnvolle Verbesserungsvorschläge umzusetzten - wie z.B. das markieren von Fibos um diese zu verändern/verschieben. Das Problem bei manchen Softwareherstellern ist, wenn die zu erfolgreich werden kommt die Arroganz im Galopp...
  8. mtbf40 antwortete auf mtbf40's Thema in Coders Helpdesk
    erst einmal danke für die Antworten. der Aufwand ist mir im Moment zu hoch - es funktioniert ja eigentlich, nur zu einem falschen Zeitpunkt!! Was ich möchte, ist einfach mal die DLL debuggen um zu schauen wo die Daten "verschluckt" werden - offensichtlich klappt das nicht mit einer DLL die von MetaTrader aufgerufen wird??!! Die Daten werden komplett von MT gesendet - der letzte Teil geht aber beim ersten senden verloren und danach sind die Daten vollständig. Irgend wie habe ich den Anschein das die DLL nicht wartet bis alles gesendet wurde und schon mal den ersten Teil weiterreicht - das muss ein Puffer-Problem sein.
  9. mtbf40 antwortete auf mtbf40's Thema in Coders Helpdesk
    Hallo, habe bei meinem Projekt jetzt festgestellt das Daten "verloren" gehen. Das ganze realisiere ich über die Indy-Komponenten - TCP-Sockets Das ganze stellt sich folgendermaßen dar: Metarader (EA) sendet "permanent" Daten an eine <--------> DLL (TCP-Server) <--------> DLL gibt die Daten an das Hauptprogramm-<HP> (TCP-Cient) beim HP kommen aber am Anfang nicht alle Daten an, sondern erst nach "kurzer" Zeit - da das HP diese Daten schon verarbeitet, kommt ein Fehler. Jetzt würde ich gern in der DLL ein Debugging einrichten, weiß aber nicht wie - ich habe die Unit IdLogDebug eingebunden die aber nichts ausgibt. Hat jemand ein Beispiel wie man diese Unit richtig einbindet? - oder was gibt es noch für Möglichkeiten eine DLL zu debuggen?? Die Basis dafür ist MTEC von RAiNWORM
  10. Frage 1: ich schreibe die Werte in eine StringVariable - deren Anzahl an Zeichen ja auf 255 begrenzt ist Frage 2: was schlöägt er denn vor ?
  11. ..weil ich 25 Werte ermittel die von mehreren Pairs kommen können - ich beschränke das aber auf 512 Bytes
  12. strReceiveBuffer[0] = "1111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000 1111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000 1111111111222222222233333333334444444444555555555566666"; //255 Bytes ErrorMeldung: '1111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000 1111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000 1111111111222222222233333333334444444444555555555566666' - too long string (255 characters maximum allowed) das senden soll an eine DLL gehen ich verwende jetzt <StringConcatenate> - der einzelne String ist zwar auf 255 Bytes beschränkt, aber beim "verbinden" geht mehr Wenn ich mir jetzt einen passenden String "bauen" will kann ich dies doch folgender Maßen machen: Bytes = LängeString/8?? string1 = '1'; string2 = '1'; for (i=0; i<Bytes; i++) { string = string+'1' if (i == 255) { string2 = string2+'1'; } } full = StringConcatenate(string1,string2);
  13. das habe ich zwar irgendwie mitbekommenm, aber erst jetzt ist es mir auch <bewusst> geworden!! http://1.1.1.4/bmi/www.tom-next.com/community//public/style_emoticons/default/chocala.gif ... also eine kleine Kehrtwende im Array und schon funktioniert es - also aus Array[20][x] mache Array[x][20] Danke... ein Problem gelöst geht es gleich mit dem nächsten weiter. wie sendet man denn einen String >256 Bytes aus Metatrader??
  14. ... so habe weiter gebastelt und ein 2 dimensionales Array aufgebaut - jedoch mit fester Länge. Wie kann man das dynamisch machen??? habe jetzt folgendes: array[20][3]: will aber: array[20][x] dieses Array wird einer Funktion übergeben - als Referenz - diese füllt es das Array mit fester Länge kann ich ausgeben - ABER es schreibt mir 60 Zeilen!! (20*3) statt 20
  15. ... und wie sieht es mit der Navigation aus??????? komme gerade aus Frankreich - wo mir ein FranzMann mein Navi (TomTom) geklaut hat ... und wollte dann mit meinem Galaxy i9000 navigieren - da hätte ich als Kühlerfigur auf der Motorhaube sitzen müssen, denn im Auto ging nixs - naja ja, wenn man nur Autobahn fährt kommt man auch so nach Hause, aber man muss sich mächtig konzentrieren!! Jetzt suche ich ein Smartphone was als oberste Prio IM Auto navigieren kann...
  16. danke erst einmal - ich werde mal "weiter basteln"
  17. meine Frage steht in Zusammenhang mit folgenden Thread WindowsID und EasyOrder Ich kann nicht - oder weis nicht - wie ich die Werte der einzelnen Linien aus den Charts ermitteln kann. deshalb gehe ich über Globale Variablen Meine Frage habe ich hier reingesetzt, weil es eine allgemeine zu GV und Arrays ist.
  18. die Pairs hole ich mir über StringSubstr(GVname,6,7)
  19. jedes Pair hat 3 GV: mit F3 aufgerufen, kann es so ausshen: Digits -> Wert EO_OP_GBPUSD -> Wert (GV 1.1.) EO_OP_EURUSD -> Wert (GV 2.1.) EO_SL_GBPUSD -> Wert (GV 1.2.) EO_SL_EURUSD -> Wert (GV 2.2.) EO_TP_GBPUSD -> Wert (GV 1.3.) EO_TP_EURUSD -> Wert (GV 2.3.) PipValue -> Wert ich mache eine for-Schleife über GlobalVariablesTotal() dann if (StringFind(GVname,"EO_",0) >= 0 && GVvalue > 0) es werden nur GV ausgewertet die >0 sind - also wertig ... und dann soll das Array aufgebaut werden nach den Symbolen, jeweils mit OP/SL/TP
  20. hab da mal 'ne Frage an die Experten: kann man(n) bei mql4 ein Array in folgender Art aufbauen: EURUSD OP -> Wert SL -> Wert TP -> Wert USDCAD OP -> Wert SL -> Wert TP -> Wert GBPUSD OP -> Wert SL -> Wert TP -> Wert Ausgelesen werden Globale Variablen Bsp.: EO_OP_GBPUSD EO_SL_GBPUSD EO_TP_GBPUSD ... können n+1 Pairs sein
  21. Auf der Suche nach "dynamischen Arrays" bin ich auf folgende Seite gestoßen... Habe sie mir jetzt nicht genauer angeschaut - könnte aber für den einen oder anderen interessant sein - vor allem für unseren "ProgProfi" Vola http://fxdreema.com/
  22. guckst du hier ... C:\Program Files (x86)\MetaTrader\experts\include\WinUser32.mqh
  23. leider hast du recht es geht um die Erweiterung von der winUser32.mqh Library
  24. Hat jemand eine Liste von den <MetaTrader4_Internal_Message>. Ich habe nur eine "russiche" gefunden - müsste man halt übersetzten. Man könnte doch eine eigene - TN-winUser32.mqh - aufbauen - was meint ihr?? oder
  25. ...das mit den Globalen Variablen habe ich jetzt kappiert und es funktioniert... ABER - hat jemand ein Beispiel oder weiß wie man es anstellt aus einem EA ein Skript aufzurufen??

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.