1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Runa

Beiträge von Runa

  • Dropdown Wert für PHP GET verwenden

    • Runa
    • 8. Oktober 2015 um 09:16
    HTML
    <table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">
      <tbody>
    	<tr>
    	  <td>test1</td>
    	  <td>
    	  <select name="test1" onchange="document.getElementById('ddlink1').href = 'add.php?tage='+this.value">
    	  <option>1</option>
    	  <option>2</option>
    	  <option>3</option>
    	  </select>
    	  </td>
    	  <td><a id="ddlink1" href="add.php?tage=1">add</a></td>
    	</tr>
    	<tr>
    	  <td>test2</td>
    	  <td>
    	  <select name="test2" onchange="document.getElementById('ddlink2').href = 'add.php?tage='+this.value">
    	  <option>1</option>
    	  <option>2</option>
    	  <option>3</option>
    	  </select>
    	  </td>
    	  <td><a id="ddlink2" href="add.php?tage=1">add</a></td>
    	</tr>
      </tbody>
    </table>
    Alles anzeigen
  • MD5 Hasher optimieren | 0xf Level 20

    • Runa
    • 7. Oktober 2015 um 19:24

    Darum vergleichst du Paket 1 auch gegen die komplette Liste, nicht nur gegen das Paket...

    Paket 1 vergleichst du demnach gegen A B C D E F G H I ... statt nur gegen das Paket selbst.

  • MD5 Hasher optimieren | 0xf Level 20

    • Runa
    • 7. Oktober 2015 um 14:11
    Zitat von AspirinJunkie

    Meine Umsetzung liegt im Anhang.
    Ich bekomme damit zwar auch den Prozessor zu 100% ausgelastet aber von 30s bin ich noch meilenweit entfernt.


    Entweder stützt sich dein System auf eine ganz andere Struktur die bei mir nicht gegeben ist, oder aber in dem Script in dem Archiv ist ein Fehler - bei mir geht die Auslastung einmalig auf 10% hoch, anschließend (nach etwa 1.5 Sekunden) werden alle (hier am Platz 4 logische Prozessoren) 4 Childprozesse geschlossen, ohne das eine Lösung erfolgt ist. Es sind bloß 4 leere txt-Dateien erstellt worden.

    Gerne teste ich dies zu Hause noch einmal, dort werde ich allerdings die Zeile "#NoTrayIcon" ergänzen, weil es dort bei den 8 physikalischen Kernen zu 16 logischen Kernen (Hyper-Threading) und somit zu 32 Threads kommt - und 33x das Icon des Programms in der Tray zu haben stelle ich mir doch unglaublich nervig vor. Gerne messe ich dir dann auch die Zeit für deinen Hash dort oben und wie lange eine einzelne MD5-Berechnung auf meiner Maschine dauert.

    Zitat von AspirinJunkie

    Auf einer 8-Kern CPU werden hier 68000 parallele Prozesse nicht schneller arbeiten als 8 - eher noch langsamer.


    Das ist nicht korrekt. Jeder Kern hat 2 Threads. Mittels Hyper-Threading wird die Anzahl der logischen Kerne verdoppelt. Bedeutet im Endeffekt, dass der CPU bei den 68000 Prozessen mit HTT stolze 32 Prozesse gleichzeitig bearbeiten kann dann die prozessorspezifische Idle-Time eintritt und schließlich die nächsten 32 Prozesse angeht. Ohne HTT wären es analog hierzu 16 Prozesse.

    misterspeed:
    Das Erstellen von über 4.624.000.000 Prozessen braucht in der Summe länger, als die Liste ~ 68.000 mal einzulesen. ;) Klar relativiert sich das Ganze, wenn du größere Teilel der Wortliste übergibst, aber ich bin mir nicht sicher, ob dies wirklich einen Geschwindigkeitsvorteil darstellt (Wortliste einmalig in eine Array lesen, Werte des Arrays an Worker übergeben, dort als CMDLine-Array abgreifen, ...), wenn man beispielsweise eine SSD verwendet. Das werde ich wohl zu Hause mal nachmessen - Ergebnisse folgen.

  • MD5 Hasher optimieren | 0xf Level 20

    • Runa
    • 6. Oktober 2015 um 17:25

    autoBert: Ist nicht gesagt.

    Das Rätsel schließt die Möglichkeit von zwei Mal dem gleichen Wort nicht aus. Und einen ganz anderen Hash ergibt es ja sowieso. ;)

  • MD5 Hasher optimieren | 0xf Level 20

    • Runa
    • 6. Oktober 2015 um 17:20

    Du kannst die Dauer schon deutlich verkürzen, wenn du praktisch einen Baum aufbaust. Beispielliste:

    A
    B
    C

    -> Du gehst gerade hin und vergleichst *nacheinander* A+A,A+B,A+C, B+A, B+B, B+C, C+A, C+B, C+C.

    Gehen wir von einer Sekunde pro Operation aus sind das [Anzahl Wörter]*[Anzahl Wörter_2] also in dem Beispiel 3*3 = 9 Sekunden. In der von dir geposteten Liste sind 68848 Wörter. Du kannst in Mathemathik auch eine 5 haben, um zu wissen, dass du auf die Weise nur sehr sehr sehr langsam (4740047104 Sekunden) an dein Ziel kommen würdest. Eine Möglichkeit, das ganze sinnvoll zu beschleunigen wäre das ganze in einen Baum zu zerlegen. Oder anders: Du legst dein Script und die Wordlist in einen seperaten Ordner - glaub mir, den brauchst du. Dein Script müsste im Grunde etwa so arbeiten wie ein Mergesort:

    Indem du die Liste aufteilst, wird die Last auf einem Prozess verringert. Da AutoIt nicht Multithreading-Fähig ist, bedeutet dies, dass du damit in diesem Fall ein Multithreading erschaffen könntest.

    Schritt 1: Unterscheide in deinem Script, ob du mit Parametern gestartet wurdest, oder ohne.
    -> Ohne Parameter: Du bist der Chef, du gibst die Anweisungen weiter.
    -> Mit Parameter: Du bist prinzipiell der Arbeiter; du hast einen Arbeitsauftrag.

    Chef:
    Schritt 2:
    -> Zerlege die Wörterliste in kleinere Häppchen - z.B. nur 10 Worte in einer Teilliste. Dadurch würden demnach die Wordlisten_1 bis _6885 entstehen.
    -> Starte dich selbst für jede Wordlist einmal, und übergebe jedes Mal eine andere Teilliste.

    Schritt 3:
    -> Du bist fertig und kannst nach Hause fahren. (=Exit)

    Arbeiter:
    Schritt 2:
    -> Lies die Wordlist.txt (die ungekürzte!) und deine eigene Wordliste (die als Parameter übergeben wurde) jeweils in ein Array.

    Schritt 3:
    -> Vergleiche, ob eines deiner Wörter, kombiniert mit einem der Wörter der Wörterliste den Hash ergibt.

    Schritt 4:
    -> Hast du ein Ergebnis, gib das Ergebnis in einem anderen Prozess (z.B. Notepad) aus und beende alle Arbeiter.


    Bei diesem Vorgehen wird die benötigte Zeit - leider bloß in der Theorie - durch die Anzahl der Prozesse bis maximal zur Anzahl der Wörter in der Liste verkürzt:

    [Anzahl der Wörter]*[Anzahl der Wörter]/[Anzahl der Prozesse] also bestenfalls: 68848*68848/68848 = 68848 Operationen/Prozess

    Der Rest hängt bloß davon ab, wie viele Operationen dein PC in einer Sekunde schafft... meiner findet bei diesem Vorgehen ein Ergebnis in weniger als 30 Sekunden, was durchaus akzeptabel sein sollte. Also: Ja es ist möglich mit AutoIt. Ist es den Aufwand wert? Eigentlich nicht. Warum ich dir keinen Code hingeworfen habe? Weil es Rätsel sind und es so klingt als wolltest du diese selbst erledigen. ;)

    Beste Grüße
    Bio

    Edit: Am Beispiel von oben noch mal:

    Deine Vorgehensweise:

    P1: A+A, A+B, A+C, B+A, B+B, B+C, C+A, C+B, C+C


    Meine Vorgehensweise:


    P1: A+A, A+B, A+C

    P2: B+A, B+B, B+C
    P3: C+A, C+B, C+C

    Beide Vorgehensweisen vergleichen das Selbe. Bloß arbeitet der eine deutlich effizienter, da er die Ressourcen des Gerätes intensiver ausnutzt. ;)

  • Nummer aus Firefox auslesen mittels FF.au3

    • Runa
    • 2. Oktober 2015 um 19:40

    Bei "\d+?" einfach das Fragezeichen wegnehmen. Dann nimmt er so viele Zahlen wie er aufeinanderfolgend finden kann.

    BananaJoe: Ne ganze Library nur für eine Funktion, die exakt das gleiche macht wie der Code oben, nur dabei nicht nur die Zahl ausgibt, sondern auch alle anderen Zeichen wie beispielsweise der Zeilenumbruch ...

  • Nummer aus Firefox auslesen mittels FF.au3

    • Runa
    • 1. Oktober 2015 um 17:40

    Nehmen wir an, du hast den Quelltext in der Variable "$sText" gespeichert:

    AutoIt
    $sBalance = StringRegExp($sText, '(?s)\<span id="balance"\>.+?(\d+?).+?\<\/span\>', 3)[0]

    Damit hast du in der Variable $sBalance die Zahl.

  • Nummer aus Firefox auslesen mittels FF.au3

    • Runa
    • 1. Oktober 2015 um 17:13

    Nein, die FF.au3 ist dazu nicht fähig. Die hat zu wenig String-Operatoren drin. Aber wie autoBert sagte dürfte das Problemlos mit den nativen String-Funktionen von AutoIt gehen - zum Beispiel mit StringRegExp. Dazu müsste man aber wissen, auf welcher Seite der Text auftaucht und natürlich, welcher Text eigentlich. Solange wir die Kristallkugel brauchen, können wir dir nicht helfen.

  • Einfaches Monitoring von Hardware

    • Runa
    • 1. Oktober 2015 um 17:01

    Ganz genau - Ein *Techniker* eben :) Kannst dir also wenn du lustig bist jeden Tag deine 28 Quadtrillionen PC-Berichte zuschicken... *fg*

  • eMail via AutoIt?

    • Runa
    • 1. Oktober 2015 um 10:13

    Empfehle das kostenlose Kommandozeilen-Tool "BLAT". Damit bist du unabhängig vom Vorhandensein von Outlook auf dem Gerät. :)

    AutoIt
    If $sBenutzer = "" Then
    	$sParam				=	"-to " & "@EMPFÄNGER@" & " -f " & $sAbsender & " -server " & $sServer & " -port " & $iPort & " -s " & $sBetreff & " -body " & $sNachrichtentext
    Else
    	$sParam				=	"-to " & "@EMPFÄNGER@" & " -f " & $sAbsender & " -u " & $sBenutzer & " -pw " & $sKennwort & " -server " & $sServer & " -port " & $iPort & " -s " & $sBetreff & " -body " & $sNachrichtentext
    EndIf
    If $fLog = "1" Then $sParam &= " -log blat.log -debug"
    $sParam = StringReplace($sParam, "@EMPFÄNGER@", $sEmpfaenger)
    $sRun = $sBlatPath & " " & $sParam
    ConsoleWrite($sRun & @CRLF)
    $iRun = Run($sRun)


    Hier ein kleiner Ausschnitt aus einer Funktion, die ich in einem Server-Überwachungstool verwende :) Genaue Syntax und andere mögliche Parameter findest du auf der Webseite des Tools :)

  • Einfaches Monitoring von Hardware

    • Runa
    • 30. September 2015 um 15:58

    Hier wäre eine voll scriptbare Möglichkeit das Ganze anzugehen - einzige Kostenstelle: SIW-Technican Licence (ich habe die Lifetime Version - das sind dann einmalig 99$).

    Kurz zu SIW: Es liefert im Grunde die gleichen Informationen wie AIDA, allerdings lässt es sich auch im Konsolenmodus starten und somit anscripten etc. pp. Die Ausgabe erfolgt dann in eine Datei. Mögliche Formate sind hier: HTML, JSON, CSV, TXT oder XML.

    Wenn du nur einen Report am Ende brauchst, kannst du den direkt per Mail versenden. Wenn auch hier Console gut wäre könntest du beispielsweise das Tool "BLAT" verwenden.
    Solltest du mehrere Reports haben (also mehrere Geräte) dann solltest du sie vorher packen. Dazu gibts bereits Wege, mit denen das erledigen werden kann:

    zip erstellen
    ZIP - Packen / Entpacken mit Windows eigener Funktion
    Datei in ZIP-Datei einpacken !!!
    ...

    Als Spam solltest du so schnell nicht eingestuft werden, sofern du das Ganze nicht übertreibst. Also einmal pro Tag wäre definitiv kein Problem. Und für Dinge wie SMART etc. definitiv im Rahmen des Brauchbaren. Wobei die Telekom da ein wenig pissig reagiert, weil die ohnehin schon sehr oft auf den RBLs (=> Real Time Blocklists) landen und somit von guten Spamfiltern wie dem NoSpamProxy direkt blockiert werden. Typischer Freeanbieter eben, der die Spammer anzieht... *fg*

  • GUICtrlSetOnEvent reagiert in in der zeiten GUI. Warum?

    • Runa
    • 30. September 2015 um 13:50

    Werde es später gerne noch einmal testen.


    Der Test auf der letzten Maschine (alter, wenig leistungsstarker PC) war eindeutig:

    Die CPU-Last war ohne den kurzen Sleep, der keinerlei Msg unterdrückt (zumindest ist mir bisher nicht eine einzige Msg entgangen - in keinem der Programme die ich geschrieben habe und deren Laufzeit im Jahrebereich liegt), deutlich höher - und mit deutlich höher meine ich einen Unterschied von Auslastung zwischen 10 bis 20% und einer Auslastung von 70 bis 80%. Völlig gleich, ob ich den PC verwendet habe, oder das Programm alleine laufen gelassen habe. Natürlich kann es auch mit anderen Faktoren noch zusammenhängen, die die letzte Messung beeinflusst haben könnten.

  • Einfaches Monitoring von Hardware

    • Runa
    • 28. September 2015 um 15:31

    Wichtige Frage, wenn du es nicht - wie von Gun-Food richtig vorgeschlagen und gut erläutert - selbst machen möchtest:


    Soll das ganze als Programm laufen, also von einem Login auf dem PC abhängig sein, oder sollte es als Dienst laufen? Bei letzterem haben manche Tools ein paar "Startprobleme". Aber nichts was sich nicht beheben lassen würde - keine Sorge. Um dir zu einer der Methoden zu raten oder gegebenfalls Erörtern, ob ich diese Aufgabe zeitnah erfüllen kann, müsste ich drei Fragen beantwortet bekommen:

    1. Ist das Gerät immer eingeschaltet?
    2. Ist an dem Gerät jemand angemeldet, wenn das Script ausgeführt werden soll?
    Und was gerade bei SMART und Temperaturen oft eine Rolle spielt: Was für ein Betriebsystem ist es?

  • GUICtrlSetOnEvent reagiert in in der zeiten GUI. Warum?

    • Runa
    • 24. September 2015 um 18:41

    Oscar : Das Problem ist nur, ohne den Sleep ist von der minimalistischen GUI so manch ein schwächerer PC ein wenig überfordert. Der Sleep blockiert keinerlei Msg. Er reduziert lediglich die CPU-Last.

  • GUICtrlSetOnEvent reagiert in in der zeiten GUI. Warum?

    • Runa
    • 24. September 2015 um 16:55

    Was auch noch gehen würde ist, den OnEventMode in der Funktion wieder zu "abzuschalten". Dann müsstest du in deiner Schleife alle weiteren Abfragen normal durchführen - eben nicht als "onEvent". Wenn du damit fertig bist, müsstest du den OnEvent wieder aktivieren, und alle Events wieder neu setzen.

    AutoIt
    #include <GUIConstants.au3>
    #include <GUIConstantsEx.au3>
    
    
    
    
    global $gui1
    global $gui2
    Global $okbutton1
    Global $okbutton2
    
    
    Opt("GUIOnEventMode", 1) ; Wechsle in den OnEvent Modus
    
    
    $gui1 = GUICreate("GUI 1", 400, 100)
    GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
    $okbutton1 = GUICtrlCreateButton("OK1", 270, 50, 60)
    GUICtrlSetOnEvent($okbutton1, "OKButton1")
    GUIsetState (@SW_SHOW,$gui1)
    While Sleep(1000)
    WEnd
    
    
    Func zweitegui()
    	Opt("GUIOnEventMode", 0) ; Wechsle aus dem OnEvent Modus
    	$gui2 = GUICreate ("GUI 2" ,100,150)
    	GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
    	$okbutton2 = GUICtrlCreateButton("OK2", 20, 50, 60)
    	GUISetState(@SW_SHOW, $gui2)
    	While Sleep(25)
    		$iMsg = GUIGetMsg()
    		Switch $iMsg
    			Case $okbutton2
    				OKButton2()
    				ExitLoop
    			Case $GUI_EVENT_CLOSE
    				CLOSEClicked()
    		EndSwitch
    	WEnd
    	Opt("GUIOnEventMode", 1) ; Wechsle in den OnEvent Modus
    	GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
    	GUICtrlSetOnEvent($okbutton1, "OKButton1")
    EndFunc
    
    
    Func OKButton1()
    	MsgBox(0, "GUI Event", "Du hast auf OK1 geklickt!")
    	zweitegui()
    EndFunc
    
    
    Func OKButton2()
    	MsgBox(0, "GUI Event", "Du hast auf OK2 geklickt!")
    	GUIDelete($gui2)
    EndFunc
    
    
    Func CLOSEClicked()
    	MsgBox(0, "GUI Event", "Du hast auf CLOSE geklickt! Programm wird beendet...")
    	Exit
    EndFunc
    Alles anzeigen
  • TreeView Erstellung

    • Runa
    • 18. September 2015 um 23:35
    Kleine Schönheitspassungen - Subjektiv gesehen
    AutoIt
    Dim Const $GUI_EXPAND = 1024
    Dim Const $GUI_FOCUS = 256
    Dim Const $GUI_EVENT_CLOSE = -3
    
    
    $Gui=GUICreate("MyGUI",400,400)
    $TreeView=GUICtrlCreateTreeView(5,5,390,390)
    $ar=FileReadToArray("Path.txt")
    local $ActualPath[10][2]
    for $i=1 to UBound($ar)-1 step 1
    	$ar2=StringSplit($ar[$i],";",1+2)
    	local $j=0
    	for $j=0 to UBound($ActualPath)-1 step 1
    		if $j<>7 then
    			if $ar2[$j]<>$ActualPath[$j][0] then
    				ExitLoop
    			endif
    		endif
    	next
    	for $j=$j to UBound($ActualPath)-1 step 1
    		if $j<>7 then
    			$ActualPath[$j][0]=$ar2[$j]
    			if $j=0 then
    				$ActualPath[$j][1]=GUICtrlCreateTreeViewItem($ar2[$j],$TreeView)
    				GUICtrlSetState($TreeView, $GUI_EXPAND)
    			else
    				$ActualPath[$j][1]=GUICtrlCreateTreeViewItem($ar2[$j],$ActualPath[(($j-1)<>7?($j-1):($j-2))][1])
    				GUICtrlSetState($ActualPath[(($j-1)<>7?($j-1):($j-2))][1], $GUI_EXPAND)
    			endif
    			If Not IsDeclared("hFirstItem") Then Dim $hFirstItem = $ActualPath[$j][1]
    		endif
    	next
    next
    GUISetState()
    
    
    GUICtrlSetState($hFirstItem, $GUI_FOCUS)
    
    
    while sleep(10)
    	if GUIGetMsg()= $GUI_EVENT_CLOSE then exit
    WEnd
    Alles anzeigen
  • Professionelle eCommerce Software

    • Runa
    • 18. September 2015 um 22:40
    Zitat von BananaJoe

    Ich habe schon für 3 Kunden Strato/ePages eingerichtet und alle sind zufrieden damit.

    Da haben ähnliche Argumente wie bei Andy dafür gesprochen - es werden auch rechtliche Vorgaben schnell angepaßt (z.B. der "Kaufen-Button").


    Naja, wir haben eben anspruchsvolle Kunden. Von denen will niemand auch nur einen Webspace bei Strato haben. Wer versucht hat mal bei Strato ein normales Joomla mit einem professionellem Template laufen lassen, weiß genau, was hier gemeint ist. Hier ein kleiner Vergleich der Ladezeiten von zwei sehr großen Webspace Anbietern - beide mit exakt der selben Joomla!-Installation:


    Strato 1 & 1 Internet
    Ohne Cache, Ohne Erweiterungen, alle Frameworks ~28s ~3s
    Ohne Cache, Ohne Erweiterungen, ohne Frameworks ~25s ~3s
    Mit Cache, Ohne Erweiterungen, Ohne Frameworks ~15s ~3s
    Mit Cache, Mit Optimierungserweiterungen, Ohne Frameworks ~12s ~1s


    Selbst mit zusätzlicher ETag-Optimierung kamen wir bei keinem der Tests innerhalb von 4 Jahren auf eine annähernd schnelle Ladezeit wie bei 1&1. Ähnliche Ergebnisse bei vielen anderen Anbietern, mit einem weniger erschöpfenden Werbeaufkommen. Die EINZIGE Möglichkeit, bei 1&1 auf Ladezeiten wie bei Strato zu kommen ist bei HTML-Seiten. Dort antworten beide Seiten innerhalb von einer Sekunde.

    Aber das ist eben der Unterschied zwischen einem IT-Systemhaus und IT-Administratoren, oder gar Hobbyadministratoren: Wir haben deutlich mehr Kunden als eine Anzahl X Shop-Seiten, wobei X an beiden Händen bequem abgezählt werden kann. Unsere Kunden zahlen für individualisierte Lösungen, statt für ein zusammengekauftes Paket an Diensten - darum stelle ich für mich persönliche höhere Ansprüche an Software, die einem Kunden angeboten wird. Es käme mir niemals in den Sinn, dort irgendeinen schlecht programmierten Webshop zu verwenden, der in seinen Möglichkeiten extrem stark beschränkt ist. Wer hier Einspruch erheben will: Nicht ohne Grund wird ín vielen Testberichten von "Für Anfänger im Ecommerce besonders gut geeignet" und "Leute, die keine Ahnung von Programmierung haben kann man das Shopystem empfehlen" gesprochen. Wer sich das Ding mal genauer angeguckt hat, wird schnell feststellen, dass man sieht, dass das nicht aus einer Hand stammt, sondern viele Programmierer daran gearbeitet haben. Dementsprechend ist dort keine einheitliche Logik gegeben, es ist an manchen Stellen qualitativer programmiert als an anderen und so weiter. Aber das ist eben der grundlegende Unterschied zwischen "Massenlösung" und "Individuallösung". Während die "Massenlösungen" meistens nicht einmal die sehr sehr simple Möglichkeit bieten, eigenes Briefpapier für die aus dem System erstellten Rechnungen zu verwenden, ist dies bei allen Individuallösungen der Fall. Auch haben die Massenlösungen oftmals das Problem, dass sie sich nur sehr sporadisch an DIN-Normen halten - was hauptsächlich an der Verwendung von Fremdcode liegt, um die Produktionszeit zu reduzieren.

    Ich könnte dies nun ewig weiter fortführen. Letztendlich sollte man sich mehrere Fragen stellen:

    1. Welche Art von Kunde habe ich?
    -> Ist es jemand, der ein solches System ohnehin kaum benutzt, wie zum Beispiel Einzelpersonen oder kleine Unternehmen ohne wirklichen Vertrieb?
    -> Ist es jemand, der sich mit Programmierung nicht wirklich auskennt?

    2. Welchen Stellenwert hat der Kunde für mich? Ist er mir die zusätzliche Arbeit wert? Würde er diese Arbeit honorieren?

    3. Wie frequentiert würde der Shop verwendet werden?

    4. Wie gut kenne ich mich selbst in Programmierung aus? Wie stehen meine Sachkenntnisse zum Vertragsrecht, ...?

    5. Wie viel Zeit würde ich benötigen, um eine individuelle Software für und mit dem Kunden zu entwickeln?

    6. Wie dringlich ist es dem Kunden ein eCommerce-System aufzusetzen?

    7. Wie sieht die EDV aus? Wo würde das System eigentlich lagern?

    8. Welche Anforderungen hat der Kunde an das System?

    ....

    Nachdem du diese Fragen für dich sachlich und rational geklärt hast, ist sofort klar, welche Methode - Massenlösung oder Individuallösung - für dich überhaupt in Frage kommt. Es wird auch schnell klar, welches Shopsystem für dich überhaupt in Frage käme. Ein kostenloses mit diversen Freiheiten wie zum Beispiel OXID eSales, modified eCommerce, Magento & co oder aber eine professionelle, an der du kaum rumschrauben kannst, wenn es denn vom Kunden erbeten wird wie zum Beispiel plentymarkets, Mondoshop, Strato Webshop und 1&1 Shop. Nach diesen Fragen weißt du ganz genau, welches System du verwenden solltest.

  • Fenster wird bei Winmove nicht neugemalt

    • Runa
    • 18. September 2015 um 21:59
    AutoIt
    #include <winapi.au3>
    #include <WindowsConstants.au3>
    
    
    Sleep(5000)
    
    
    $hWindow = WinGetHandle(WinGetTitle(""))
    _WinAPI_MoveWindow($hWindow, 0, 0, 518, 395, True)

    Funktioniert bei mir bei 24 von 24 getesteten Fenstern. ;)

  • Professionelle eCommerce Software

    • Runa
    • 17. September 2015 um 19:47

    Andy: Klingt aber alles andere als so, als würde er mit der Einstellung noch einmal einen Auftrag bekommen. Immerhin zeigt er damit unter anderem Faulheit und fehlende Sachkenntnis. ;)

  • Programm aus Toolbar wiederherstellen (maximieren)

    • Runa
    • 17. September 2015 um 14:02
    AutoIt
    $sTitle = "SpeedFan 4.51"
    
    
    WinSetState($sTitle, "", @SW_RESTORE)
    ControlClick($sTitle, "", "[CLASS:TJvXPButton; INSTANCE:1]", "primary")
    
    
    Sleep(500)
    
    
    While WinGetTitle("") = "Configure"
    WEnd
    
    
    WinSetState($sTitle, "", @SW_HIDE)
    Alles anzeigen

    Etwa so?

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™