Überflüssige Algorithmen Teil III (Programme, die die Welt nicht braucht)

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Unsere Datenschutzerklärung wurde aktualisiert. Mit der Nutzung unseres Forums akzeptierst Du unsere Datenschutzerklärung. Du bestätigst zudem, dass Du mindestens 16 Jahre alt bist.

  • Danke RGH! Wenn alles richtig eingestellt ist, geht es also um den Alphakanal mit weiteren 8 bit, somit 256 Transparenzstufen. XProfan besitzt dazu allerdings (noch) keine Befehle, oder?
    Gruss

    P.S.: Vor einigen Jahren hab ich mich ja selbst noch gegen diesen "unnötigen Klimbim" ausgesprochen. Naja, was kümmert mich mein Blödsinn von gestern ...)
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • PrimTurbo, die was-weiß-ich-wie-viel-ste...

    Wer gedacht hat, jetzt ist langsam mal die Grenze erreicht, der irrt sich! :-D
    Bereiche sind nämlich sooo viel schneller als Arrays...

    Quellcode

    1. $P-
    2. 'PrimTurbo
    3. '
    4. 'Turbo-Primzahlensuchprogramm
    5. Declare Primeln#, PrimIndex&, MaxPrimel&, ActPrimel&, StartZeit&, PrimCount&, Ausgabe%, JN$, EndZeit&
    6. Cls
    7. Print "Primzahlen finden bis: ";
    8. Input MaxPrimel&
    9. UserMessages 16
    10. Dim Primeln#, MaxPrimel& + 1
    11. Print ""
    12. Print "Primzahlen werden gesucht..."
    13. StartZeit& = &gettickcount
    14. WhileLoop 4, MaxPrimel&, 2
    15. Byte Primeln#, &loop = 1
    16. EndWhile
    17. WhileLoop 3, (MaxPrimel& \ 3) + 1, 2
    18. 'ActPrimel& = &loop
    19. IfNot @Byte(Primeln#, &loop)
    20. WhileLoop 3 * &loop, MaxPrimel& \ &loop * &loop, &loop << 1
    21. Byte Primeln#, &loop = 1
    22. EndWhile
    23. EndIf
    24. EndWhile
    25. EndZeit& = &gettickcount
    26. Print ""
    27. Print "Suchen abgeschlossen."
    28. Print "Benötigte Zeit: " + @Str$((EndZeit& - StartZeit&) / 1000) + " Sekunden."
    29. Print ""
    30. Print "Primzahlen zählen (J/N)? ";
    31. Input JN$
    32. If @Upper$(JN$) = "J"
    33. Print ""
    34. Print "Primzahlen werden gezählt..."
    35. PrimCount& = 0
    36. WhileLoop 2, MaxPrimel&
    37. IfNot @Byte(Primeln#, &loop)
    38. Inc PrimCount&
    39. EndIf
    40. EndWhile
    41. Print ""
    42. Print "Gefundene Primzahlen: " + @Str$(PrimCount&)
    43. EndIf
    44. Print ""
    45. Print "Ausgeben (0 = Nicht ausg.; 1 = Im Fenster ausgeben;"
    46. Print "2 = In Datei ausgeben; 3 = beides)? ";
    47. Input Ausgabe%
    48. If (Ausgabe% Mod 2)
    49. Print ""
    50. Print "Ausgabe:"
    51. WhileLoop 2, MaxPrimel&
    52. IfNot @Byte(Primeln#, &loop)
    53. Print &loop
    54. EndIf
    55. EndWhile
    56. EndIf
    57. If (Ausgabe% \ 2)
    58. Print ""
    59. Print "Dateiausgabe..."
    60. Assign #1, "Primzahlen.txt"
    61. ReWrite #1
    62. WhileLoop 2, MaxPrimel&
    63. IfNot @Byte(Primeln#, &loop)
    64. Print #1, &loop
    65. EndIf
    66. EndWhile
    67. Close #1
    68. EndIf
    69. Dispose Primeln#
    70. Print "Beliebige Taste zum Beenden drücken..."
    71. WaitInput
    Alles anzeigen


    P. Specht, würdest Du bitte noch mal...? ;-)


    Gruß
    Jonathan
    WICHTIG: Bitte diesen Virencheck durchführen: paules-pc-forum.de/forum/pc-si…infiziert.html#post902873
  • Abt. Primel Filter
    --------------------
    Jonathan, die Umstellung auf Bereiche bringt vor allem bei der Speicherplatzeinsparung erhebliche Vorteile,
    sowie als Vorbereitung für eine effiziente Maschinensprachenumsetzung in Assembler.
    Bei den Laufzeiten messe ich sehr Ähnliches wie bei deinem vorletzten Programm:

    Interpreter:
    1- 10.000: 1229 Stk in 0.795 sek (zuletzt 0.749)
    -100.000: 9592 Stk in 8.565 sek (zuletzt 8.08)
    bis 1 Mio: 78498 Stk in 92.882 sek (zuletzt 86.595)

    Compiler:
    1- 10.000: 0.156 sek (zuletzt 0.125)
    -100.000: 1.653 sek (zuletzt 1.451)
    bis 1 Mio: 17.55 sek (zuletzt 15.366)
    bis 10 Mio (Neuer Bereich, Ergebnis 664.579 Primzahlen ist laut Liste korrekt): 181.99 sek

    Gruss
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • Abt. Kleiner Fermat
    ----------------------
    Jonathan, vielleicht sollten wir das Verfahren wechseln! Hier der Miller-Rabin Primzahlentest mit einer Umsetzung in Pseudocode. Er fußt auf einer Variante des "kleinen Fermat´schen Satzes" aus dem 17. Jahrhundert (n ist die auf Primheit zu testende Zahl, a eine Reihe von bestimmten Ganzzahlen): a^(n-1) mod n = stets 1, solange a kein Vielfaches von p ist. Ein Wikipedia-Artikel dazu: "(Zitat) Der Miller–Rabin-Algorithmus kann deterministisch angewendet werden, indem alle Basen in[nerhalb] einer [von Mathematikern] bestimmten Menge getestet werden:

    Wenn n < 1.373.653, ist es ausreichend[, mit] a = 2 und 3 zu testen,
    wenn n < 9.080.191, ist es ausreichend[, mit] a = 31 und 73 zu testen,
    wenn n < 4.759.123.141, ist es ausreichend[, mit] a = 2, 7, und 61 zu testen,
    wenn n < 2.152.302.898.747, ist es ausreichend a = 2, 3, 5, 7, und 11 zu testen,
    wenn n < 3.474.749.660.383, ist es ausreichend a = 2, 3, 5, 7, 11, und 13 zu testen,
    wenn n < 341.550.071.728.321, ist es ausreichend a = 2, 3, 5, 7, 11, 13, und 17 zu testen."
    ...[darüber hinaus] ist es zwar theoretisch möglich, dass [versehentlich (Anm.d.Verf.)] eine zusammengesetzte Zahl [fälschlich] als Primzahl genutzt [bzw. erkannt] wird, die Wahrscheinlichkeit ist jedoch so gering, dass das in der Praxis keine Rolle spielt (Zit. Ende)"

    P.S.: 341550071728321 wäre zwar durch Float abgedeckt (Profan´s Double Precision Floats können 15 signifikante Stellen sicher wiedergeben, genauer gesagt Ganzzahlen bis 2^53 = 9007199254740992). Allerdings ist XProfans mod-Operator nur auf dem Profan-eigenen Ganzzahlbereich -2147483648..+2147483648 definiert (unter 1 auch noch verkehrt), und 17^341550071728320 mod 341550071728321 muß erst mal jemand rechnen können. Kommandozeilengesteuerte Faktorisierungsprogramme nach der Methode "Quadratisches Sieb", wie z.B. YAFU, könnten hierbei aber weiterhelfen.
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • Abt. ggT/kgV die ..zigste:
    ===============

    Quellcode

    1. Windowtitle "Größter gemeinsamer Teiler / kleinstes gemeinsames Vielfaches"
    2. Font 2:Randomize:cls rnd(8^8)
    3. Declare z&,n&
    4. Repeat
    5. print " a = ";:input z&:if z&<=0:print " > 0 !!!":waitinput:end:endif
    6. print " b = ";:input n&:if n&<=0:print " > 0 !!!":waitinput:continue:endif
    7. print " ggT:";GGT(z&,n&);", ggT_modern:";GGT_modern(z&,n&);", *:";int(z&*n&);\
    8. ", kgV:";int(kgV(z&,n&));", /:";int(z&*n&/kgV(z&,n&))
    9. if ggt(z&,n&)-1:print " Gekürzt: "; int(z&/GGT(z&,n&));" / ";int(n&/GGT(z&,n&))
    10. else :print:endif
    11. case %csrlin>20:cls rnd(8^8)
    12. EndWhile
    13. proc GGT
    14. parameters a&,b&
    15. IF a&=0
    16. return b&
    17. ELSE
    18. while b&<>0
    19. if a&>b&
    20. a&=a&-b&
    21. else
    22. b&=b&-a&
    23. endif
    24. endwhile
    25. ENDIF
    26. return a&
    27. EndProc
    28. Proc GGT_modern
    29. parameters a&,b&
    30. Declare h&
    31. While b&:h&=a& mod b&:a&=b&:b&=h&:EndWhile
    32. return a&
    33. EndProc
    34. Proc kgV
    35. parameters c&,d&
    36. return c&*d& / ggT_modern(c&,d&)
    37. endproc
    Alles anzeigen
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • Abt. mod-Operator
    ============
    Die modulo-Funktion, seit Profan 11 als Operator " mod " implementiert, liefert die Restwerte der Ganzahldivision Dividend \ Divisor. Im Negativen gibt die Profan-Version allerdings den gegenüber der mathematischen Definition komplementären Wert (Mod - Divisor) aus (kein Beinbruch, muß man nur wissen), und ein x mod 0 führt zu einem Division durch Null Error.
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • Ist aber doch besser als so:

    Quellcode

    1. Cls:Declare z&,n&:Repeat
    2. print " a ";:input z&:if z&<=0:print ">0!!":waitinput:end:endif
    3. print " b ";:input n&:if n&<=0:print ">0!!":waitinput:continue:endif
    4. print " ggT:";GGT(z&,n&);", ggT_modern:";GGT_modern(z&,n&);", *:";int(z&*n&);\
    5. ", kgV:";int(kgV(z&,n&));", /:";int(z&*n&/kgV(z&,n&)):if ggt(z&,n&)-1
    6. print " Gekürzt: "; int(z&/GGT(z&,n&));" / ";int(n&/GGT(z&,n&)):else
    7. print:endif:case %csrlin>20:cls rnd(8^8):EndWhile
    8. proc GGT :parameters a&,b&:IF a&=0:return b&:ELSE:while b&<>0
    9. if a&>b&:a&=a&-b&:else:b&=b&-a&:endif:endwhile:ENDIF:return a&:EndProc
    10. Proc GGT_modern :parameters a&,b&:Declare h&:While b&:h&=a& mod b&
    11. a&=b&:b&=h&:EndWhile:return a&:EndProc
    12. Proc kgV :parameters c&,d&:return c&*d&/ggT_modern(c&,d&):endproc
    Alles anzeigen
    Oder? :-D
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • Abt. Drag&Drop
    -----------------
    Drag&Drop zwischen Programmen mit unterschiedlichen Rechten ist nicht mehr zulässig in Windows 7 - zwischen Programmen gleichen Ranges oder abwärts erlaubt Sicherheitswächter UAC das aber.
    Zu den Anfängen von Drag&Drop hier ein Artikel. Wie man Drag&Drop in C# realisert, findet sich z.B. HIER.

    Ob bzw. wie das auch in XProfan geht, scheint derzeit ungeklärt. Es gibt allerdings Hinweise, daß es Listbox-Styles geben soll, die den Drag&Drop von Inhalten ermöglichen: Zitat aus Quelle: "There is no provision in the Win32 API, to drag and drop strings in a list box, as you can see from the list box styles here ... I'm afraid you'll have to do your own code". Answer: "not true - have you heard of Drag List Boxes? Just call MakeDragList on a standard list box!"

    Gruss

    P.S.: Auch in Browsern wird zunehmend auf Drag&Drop gesetzt. Die erste vollständige Umsetzung in allen gängigen Browsern gelang zwei deutschen Studenten mit Virtos.net (Preis von "Jugend forscht"). Eine weitere Variante von Drag and Drop in Web-Schnittstellen stellt die DHTML-API von Walter Zorn dar. Hier eine Demo dazu.
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • Abt. XPIA-Eigenart
    --------------------

    Quellcode

    1. case .
    2. $MAKE CL:
    3. font 2:randomize:cls rnd(8^8)
    4. declare x&,y&:x&=100
    5. asmstart fn(x&) 'fn(' scheint [COLOR='Red']nicht erlaubt[/COLOR] zu sein!
    6. ; 'f0(,fa(,f1(,Fx(.. erzeugen dagegen kein Problem
    7. mov eax,para1
    8. asmend(y&)
    9. print y&:waitinput
    Alles anzeigen
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • fn ist der Name eines definierten Macros und ist deswegen schon vergeben:

    ; ----------------------------------------------------------------
    ; invoke enhancement. Add quoted text support to any procedure
    ; or API call by using this macro instead of the standard invoke.
    ; LIMITATION : quoted text must be plain text only, no ascii
    ; values or macro reserved characters IE <>!() etc ..
    ; use SADD() for requirements of this type.
    ; ----------------------------------------------------------------
    fn MACRO args:VARARG
    LOCAL cnt
    cnt = 0
    arg equ <>
    FOR var,<args>
    arg CATSTR arg,<var> ;; get the proc name as 1st arg
    EXITM
    ENDM
    FOR var,<args>
    IF cnt gt 0
    arg CATSTR arg,<,reparg(var)> ;; replace quotes and append arg
    ENDIF
    cnt = cnt + 1
    ENDM
    invoke arg
    ENDM
    Gruß, Frank
  • p. specht;884694 schrieb:

    Abt. Drag&Drop
    -----------------
    Ob bzw. wie das auch in XProfan geht, scheint derzeit ungeklärt. Es gibt allerdings Hinweise, daß es Listbox-Styles geben soll, die den Drag&Drop von Inhalten ermöglichen: Zitat aus Quelle: "There is no provision in the Win32 API, to drag and drop strings in a list box, as you can see from the list box styles here ... I'm afraid you'll have to do your own code". Answer: "not true - have you heard of Drag List Boxes? Just call MakeDragList on a standard list box!"


    Dazu mal ein Beispiel :

    Quellcode

    1. $H Windows.ph
    2. $H Messages.ph
    3. $H commctrl.ph
    4. DEF &LVM_SETINSERTMARK 4262
    5. DEF &LVM_SETINSERTMARKCOLOR 4266
    6. Struct LVINSERTMARK = cbSize&,dwFlags&,iItem&,dwReserved&
    7. DEF $DRAGLISTMSGSTRING "commctrl_DragListMsg"
    8. DEF &DL_BEGINDRAG 1157
    9. DEF &DL_DRAGGING 1158
    10. DEF &DL_DROPPED 1159
    11. DEF &DL_MOVECURSOR 3
    12. DEF &DL_COPYCURSOR 2
    13. '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    14. Struct LVHitTestInfo = X&,Y&,flags&,Item&,SubItem&
    15. Declare LVHTI#,l%,L.SubItem$
    16. Dim LVHTI#,LVHitTestInfo
    17. Proc LV_HitTest
    18. Parameters LV&,X%,Y%
    19. ~GetCursorPos(LVHTI#)
    20. ~ScreenToClient(LV&,LVHTI#)
    21. SendMessage(LV&,~LVM_SUBITEMHITTEST,0,LVHTI#)
    22. Return LVHTI#.SubItem&
    23. EndProc
    24. '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    25. Proc LvDeSelect'deselectieren
    26. Parameters Lv&,Item&
    27. Declare s#
    28. Dim s#,1024
    29. LONG s#,12=0
    30. LONG s#,16=~LVIS_SELECTED | ~LVIS_FOCUSED
    31. sendmessage(Lv&,~LVM_SETITEMSTATE,Item&,s#)
    32. dispose s#
    33. EndProc
    34. '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    35. Proc LvSelect'selectieren
    36. Parameters Lv&,Item&
    37. Declare s#
    38. Dim s#,1024
    39. LONG s#,12=$2
    40. LONG s#,16=~LVIS_SELECTED | ~LVIS_FOCUSED
    41. sendmessage(Lv&,~LVM_SETITEMSTATE,Item&,s#)
    42. sendmessage(lv&,~LVM_SETHOTITEM ,item&,0)
    43. sendmessage(lv&,~LVM_ENSUREVISIBLE ,Item&,0)
    44. dispose s#
    45. EndProc
    46. '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    47. Struct POINT = X&,Y&
    48. Struct DRAGLISTINFO = uNotification&,hWnd&,ptCursor!POINT
    49. Var FirstItem& = 0
    50. Var LastItem& = 0
    51. Var MoveString$ = ""
    52. Var MoveCursor& = ~LoadCursor(~GetModuleHandle("shell32.dll"),1003)
    53. 'Genau diese spezielle Meldung muss registiert werden
    54. 'damit das Fenster die Drag&Drop Operationen verarbeiten kann.
    55. Var DragMSG& = ~RegisterWindowMessage($DRAGLISTMSGSTRING)
    56. CLS
    57. SetDialogFont ~GetStockObject(~ANSI_VAR_FONT)
    58. Var Ende& = 0
    59. Var dlg& = @Create("ChildWindow", %hwnd, "Liste", 80, 60,300,300)
    60. Var Text$ = "Name;0;140"
    61. Var draglist& = Create("GridBox", dlg&, text$, 0, 80, 14, 100, 220)
    62. 'Die Listbox für Drag&Drop vobereiten
    63. External("comctl32.dll","MakeDragList",Draglist&)
    64. Addstring(Draglist&,"Eintrag")
    65. Addstring(Draglist&,"Auftrag")
    66. Addstring(Draglist&,"Anton")
    67. Addstring(Draglist&,"Otto")
    68. Addstring(Draglist&,"Werner")
    69. Addstring(Draglist&,"Karl")
    70. SubClass dlg&,1
    71. WhileNot Ende&
    72. Waitinput
    73. EndWhile
    74. SubClass dlg&,0
    75. End
    76. SubClassProc
    77. If SubClassMessage(dlg&,DragMSG&)
    78. Var structInsertMark# = New(LVINSERTMARK)
    79. structInsertMark#.cbSize& = 16
    80. structInsertMark#.dwFlags& = 1 'LVIM_AFTER
    81. structInsertMark#.dwReserved& = 0
    82. Var Info# = New(DRAGLISTINFO)
    83. locate 0,0
    84. l% = LV_HitTest(Draglist&,%mousex,%mousey)
    85. L.SubItem$=GetText$(Draglist&,LVHTI#.Item&,LVHTI#.SubItem&)
    86. Info# = &slParam
    87. If Info#.uNotification& = &DL_BEGINDRAG'Drag&Drop beginnt und Item merken
    88. FirstItem& = LVHTI#.Item&
    89. print FirstItem&, " nach "
    90. 'Marker zeichnen, muss nicht sein, erhöht aber die Sichtbarkeit
    91. structInsertMark#.iItem& = -1
    92. Sendmessage(draglist&,&LVM_SETINSERTMARKCOLOR,0,$FF)
    93. SendMessage(Draglist&, &LVM_SETINSERTMARK, 0,structInsertMark#)
    94. MoveString$ = GetText$(Draglist&,LVHTI#.Item&,LVHTI#.SubItem&)'Item-Text merken
    95. Set("WinProc", 0)
    96. ~SetCursor(MoveCursor&)
    97. Return &DL_COPYCURSOR
    98. ElseIf Info#.uNotification& = &DL_DRAGGING'Drag&Drop ist im Gange
    99. LastItem& = LVHTI#.Item&
    100. locate 0,10
    101. Print " "
    102. locate 0,10
    103. Print LastItem&
    104. LvSelect Draglist&,LastItem&
    105. 'Marker neuzeichnen
    106. structInsertMark#.iItem& = LastItem&
    107. SendMessage(Draglist&, &LVM_SETINSERTMARK, 0,structInsertMark#)
    108. Set("WinProc", 0)
    109. 'Item markieren
    110. SendMessage(DragList&,~Lb_SETCURSEL,LastItem&,0)
    111. ~SetCursor(MoveCursor&)
    112. If Lastitem& = -1:Return 1:Endif
    113. ElseIf Info#.uNotification& = &DL_DROPPED'Drag&Drop ist beendet
    114. LastItem& = LVHTI#.Item&
    115. If Lastitem& <> -1
    116. 'das erste gemerkte Item löschen
    117. DeleteString(DragList&,FirstItem&)
    118. 'und an der Position des letzten gemerkten Items einfügen
    119. InsertString(DragList&,LastItem&,MoveString$)
    120. Set("WinProc", 0)
    121. SelectString(Draglist&,-1,Movestring$)
    122. EndIf
    123. EndIf
    124. Dispose structInsertMark#
    125. Dispose Info#
    126. EndIf
    127. EndProc
    Alles anzeigen
    Gruss
    Andreas

    ______________________
    http://www.ampsoft.eu

    Profan 3.3 - XProfanX2
    Windows 95,98,ME,2000,XP
    Vista - Windows 7 32 / 64 Bit

    ASUS X93S - Intel Core I7 - NVIDIA GForce GT540M - 8GB Arbeitsspeicher
  • Unter Win7-64 mit 11.2a-Interpreter spielt vermutlich der Berechtigungslevel nicht mit*) (EAccess Violation), aber ich finde es supertoll, daß sich da überhaupt jemand drübertraut! In der Profanhilfe findet man unter DRAG immerhin einen Hinweis beim GetState-Befehl:

    State& = @GetState(Handle&, Zeile&) ' Bei Gridboxen zeigt 8 = ausgewählt für Drag&Drop

    "Es wird der Status der Zeile N2 in der List- oder Gridbox mit Mehrfachauswahl ermittelt. Ein Wert größer Null gibt an, daß die Zeile markiert ist. Bei der Gridbox setzt er sich aus folgenden Werten zusammen: 1 = Zeile hat den Focus / 2 = Zeile ist markiert / 4 = markiert für Cut&Paste / 8 = markiert für Drag&Drop.

    ______
    *) Leider falsch vermutet...
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • p. specht;884874 schrieb:

    Unter Win7-64 (Interpreter) spielt leider der Berechtigungslevel nicht mit (EAccess Violation), aber ich finde es supertoll, daß sich da überhaupt jemand drübertraut!



    ???

    In dem Code geht es nur um Drag&Drop innerhalb der Listbox.
    Item anfassen und an eine andere Position schieben.
    Gruss
    Andreas

    ______________________
    http://www.ampsoft.eu

    Profan 3.3 - XProfanX2
    Windows 95,98,ME,2000,XP
    Vista - Windows 7 32 / 64 Bit

    ASUS X93S - Intel Core I7 - NVIDIA GForce GT540M - 8GB Arbeitsspeicher
  • p. specht;884874 schrieb:

    Unter Win7-64 (Interpreter) spielt leider der Berechtigungslevel nicht mit (EAccess Violation), aber ich finde es supertoll, daß sich da überhaupt jemand drübertraut!



    ???

    In dem Code geht es nur um Drag&Drop innerhalb der Listbox.
    Item anfassen und an eine andere Position schieben.
    Das funktioniert auch unter Win7-64, übrigens auch schon ab Win98.
    Gruss
    Andreas

    ______________________
    http://www.ampsoft.eu

    Profan 3.3 - XProfanX2
    Windows 95,98,ME,2000,XP
    Vista - Windows 7 32 / 64 Bit

    ASUS X93S - Intel Core I7 - NVIDIA GForce GT540M - 8GB Arbeitsspeicher
  • Ach so, nix Drag hinein oder hinaus... Sorry, da hab ich was total missverstanden!
    Leider will der Code bei mir nicht laufen: "Zugriffsverletzung bei Adresse ..... im Modul 'USER32.dll'. Lesen von Adresse 0000000D."
    Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
  • p. specht;884878 schrieb:

    Will bei mir nicht starten: Zugriffsverletzung bei Adresse ..... im Modul 'USER32.dll'. Lesen von Adresse 0000000D.


    Ne, sorry, Code läuft erst ab XProfan X2
    Gruss
    Andreas

    ______________________
    http://www.ampsoft.eu

    Profan 3.3 - XProfanX2
    Windows 95,98,ME,2000,XP
    Vista - Windows 7 32 / 64 Bit

    ASUS X93S - Intel Core I7 - NVIDIA GForce GT540M - 8GB Arbeitsspeicher