Was wohl die von mir hochgeachteten Menschen (egal welcher politischen Couleur) sagen würden, die in diesem Land für Recht und Gerechtigkeit gesorgt haben? Allen voran ein Bundespräsident Richard von Weizäcker, mit dem ich das Vergnügen hatte, einige Worte wechseln zu können. Was muss in diesen Menschen vorgehen, wenn sie abends in den Nachrichten sehen, was aus ihrem Land mittlerweile geworden ist? Man muß sich wirklich nicht mehr wundern, daß sogar ein Bundespräsident den Kram hinschmeisst, wenn er sich von irgendwelchen Wichten ungestraft anpissen lassen muß!Wie war das mit den Ratten und dem sinkenden Schiff?
Beiträge von Andy
-
-
Ein 4 Jahre alter Thread zum Thema....Shockwave Flash Object das dort vorgestellte Script funktioniert immer noch....
-
Alles was mir zu diesem Thema einfällt, ist http://www.DubistTerrorist.de
Ein mündiger Bürger, der diese sog. "Volksvertreter" wählt und unterstützt, befürwortet das Abhandenkommen jeglicher Demokratie in diesem Land! Das lässt im Umkehrschluss die interessante Frage zu, ob "das Volk" überhaupt in einer Demokratie leben möchte....die Ergebnisse der Wahlen sprechen für sich. Der Großteil der Wähler unterstützt Parteien, die Nachweislich die Grundrechte "des Einzelnen" beschneiden und außer Kraft setzen wollen.
Das absolut lächerlichste an der ganzen Sache ist, daß niemand, der ernsthaft eine "terroristische Aktion" plant, auf Telekommunikation angewiesen ist. Es wird so getan, als ob sämtliche bösen Buben dieser Welt in Internetforen unterwegs sind, aussschliesslich per Email und (natürlich legal registrierten) Handys kommunizieren und das alles natürlich unverschlüsselt....
Ich habe, aus reinem Interesse, Briefe mit "gefährlichem" Inhalt an willkürliche Adressen in ganz Europa geschickt. Die meisten Briefe kamen mit "unbekannter Empfänger" nach mehr oder wenig langer Wartezeit zurück. Ungeöffnet bis auf zwei. Der Inhalt dieser
Briefe per Mail verschickt, hätte sofort die Staatsanwaltschaft auf den Plan gerufen. Denn Mail wird schon seit langem gescannt....Ich hatte viele Jahre eine Firma, welche zur Sicherung von Leben und Eigentum von Privatleuten beigetragen hat. NIEMAND dieser Personen hat je Angst vor einem "terroristischen" Anschlag gehabt. Wieso auch? Die wirklichen Ziele der "Terroristen" sind die Politiker, und deren Angst ist in den meisten Fällen auch begründet, denn sie tragen für ihr Tun die Verantwortung. Allerdings wird alles dafür getan, diese Verantwortung nicht übernehmen zu müssen und trotzdem große Reden schwingen zu können. "Kleine" Verbrecher werden jahrelang (richtigerweise) hinter Gitter gesperrt, aber für die die "großen" werden Schlupflöcher im Gesetz geschaffen (gegen entsprechenden Obolus oder um das eigene Nest nicht noch weiter zu beschmutzen).
Vor diesem Hintergrund ist es kaum noch möglich, Initiative zu ergreifen....Engagement in den etablierten Parteien zum Thema wird ab einer bestimmten Ebene geblockt bzw. als kontraproduktiv abgewimmelt. Hauptsache es wird "irgendwas getan", für das man nicht persönlich zur Verantwortung gezogen werden kann. Bei den folgenden Abstimmungen werden dann die Stimmen per Koalitionszwang (ja, das gibt es in einer Demokratie!) zugeteilt. Das Procedere ist immer das selbe, man wird niemanden zur Verantwortung ziehen, der vom Thema überhaupt keine Ahnung hat....sei es ein Minister oder Vorstand/Aufsichtsrat einer Großbank oder Großunternehmens.
BTT. Das schlimmste an der Sache ist, daß diejenigen, die sich und ihre Kinder vor z.B. Kinderpornografie schützen wollen und im Web nach Informationen suchen, an oberster Stelle der "Verbrecherlisten" landen, während die von Abgeordneten mit "Freunden" getauschten Videokassetten/DVD´s/Geldkoffer aufgrund diplomatischer Immunität fröhlich an jedem Zoll der Welt vorbeigelotst werden.
Ich war nie der große Demonstrierer, aber das einzige was zzt. hilft ist, auf die Straße zu gehen und friedlich für sein Recht einzutreten. Aber an Gesetzen zur Verhinderung von Demonstrationen wird schon fleissig gearbeitet..... also beeilt euch!
Daß die Gemeinschaft auch etwas bewirken kann, sieht man an Aktionen wie seinerzeit mit Shell/Brent Spar. In absolut kürzester Zeit wurde ein Weltölkonzern in die Knie gezwungen, weil "die Kunden" eine Woche lang an anderen Tankstellen tankten. Schöpft alle legalen Mittel euch zu wehren aus, solange es sie noch gibt! -
hmmmm, wäre das nicht ein Feature , welches man in "Organize Includes" unterbringen könnte? Im Prinzip hat OI schon 90% der Arbeit erledigt...
Mach doch eine UDF, welche im aufgerufenen Script an den passenden Stellen die Variablen $ParentFuncName und $CurrentFuncName einfügt
-
Verstehe ich ehrlich gesagt nicht. Sobald du eine Funktion verlässt, werden lokale Variablen oder Arrays sowieso gelöscht.
Solltest du in einer Rekursion stecken, dann ist es natürlich tödlich (Speichertechnisch gesehen) die Funktion abzubrechen, statt mittels der Abbruchbedingung die Rekursion "rückwärts" abzuarbeiten. Beim "rauslaufen" aus einer Rekursion wird der (von der Funktion bei jedem Aufruf der Funktion reservierte) Speicher sowieso wieder freigegeben. -
Oscar ,
in Rekursionen, um ein Abbruchkriterium zu haben. Eine andere Anwendung fiele mir auch nicht ein -
Hi,
ich löse das Problem in einigen meiner Scripte, indem ich global einen $func_name definiere, der dann z.B. bei Fehlermeldungen abgefragt wird. Funktionen werden ggf zu "Modulen" zusammengefasst. $MODUL ist dann z.B. der Funktionsname.
Das würde dann z.B. zu einer Fehlermeldung "Fehler in Modul AUSGABE **hier steht dann der Fehlertext**. Das Modul AUSGABE wurde von Modul EINGABE aufgerufen!" führen. Besser als "Error in line -1. AutoIt will be terminated...Press OK to continue"Für die "Ebene" (ich gehen von einer Rekursion aus) kann man einen Zähler definieren. Ggf. als STATIC (wird dieses Schlüsselwort eigentlich für die Zukunft unterstützt?).
EDIT /zu spät....das passiert, wenn man während des postens telefoniert und Kaffee kochen geht^^
-
Algorithmen zur Lösung des Problem des "travelling Salesman" wurden mitte der 80er von IBM in Verbindung mit einem öffentlichen Wettbewerb gesucht. Aus Spass hatte ich auch mitgemacht und war fasziniert von den Optimierungsmöglichkeiten. Auf einem 4,77Mhz-PC war ohne weiteres der kürzeste Weg zwischen 100-200 "Städten" zu berechnen.
Logischerweise findet man den kürzesten Weg einfachst über Brute-Force, aber das interessante ist, daß man einen "nicht perfekten" Weg (der nur minimalst vom perfekten abweicht), in einem Bruchteil der Zeit berechnen kann.Dabei ist zu beachten, daß der Algorithmus auch vermeintlich "schlechtere" Wege einschlagen muß, um im Nachhinein doch ein Optimum zu erzielen.
Grafisch war das immer eine Show (auf Monochrom Herculesgrafik^^), wenn der Computer kurz vor der vermeintlichen Lösung den Graphen nochmal "verkneuelt" hat, um danach noch um ein Millionstel Längeneinheit besseres Ergebnis zu liefern.
Die 5 1/4´´-Diskette mit den Programmen hab ich leider nicht mehr gefunden....bestimmt zusammen mit den anderen "Computerantiquitäten" weggeschmissen....macht doch einen µIt draus^^A-Propos, "meinen" Algorithmus hatte ich später in einen HIRATA-Lötroboter integriert, der glücklicherweise auch in Basic programmiert werden konnte. So musste man nur die Position der Lötstellen "teachen", und der Controller hat im nachhinein die kürzeste Strecke zwischen den ca. 20-30 Lötstellen berechnet. Durch diese "Optimierung" konnten dann ein oder zwei Fernseher mehr pro Tag produziert werden (statt 400 dann 402).
-
mit wingetpos() die Position und Grösse des Fensters ermitteln und mit der Größe des Desktops abgleichen.
Wenn pos_x kleiner null dann pos_x=0. Gleiches gilt für pos_y.
Wenn $pos_x > @desktopwidth-breitefenster then $pos_x = @desktopwidth-breitefester, genauso für pos_y
Fenster nun per winmove() an pos_x,pos_y verschieben.Wobei damit das Problem nur zur Hälfte gelöst ist. Wenn ein Fenster dein per GDI gezeichnetes Kunstwerk kurzzeitig überdeckt, oder dein Fenster minimiert wird, dann ist das GDI-Objekt auch verschwunden. Also die "Zeichnung" in einen Buffer schreiben und diesen bei jeder Bewegung des Fensters neu zeichnen erschlägt alle Problem auf ein Mal.
-
[autoit]
#include <File.au3>
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
#include <Array.au3>; packt alle Dateien in einem Verzeichnis in eine Containerdatei
[/autoit][autoit][/autoit][autoit]
;Dateiformat des Containers:
;4 Byte Anzahl Dateien, eigentlich nicht nötig
;xx Byte Name 1. Datei, nullterminiert, damit man weiss, wann der Dateiname zuende ist
;8 Byte Größe 1. Datei
;xx Byte Dateiinhalt 1. Datei
;xx Byte Name 2. Datei, nullterminiert
;8 Byte Größe 2. Datei
;xx Byte Dateiinhalt 2. Datei
;uswusf;Beispiel: alle Dateien im Verzeichnis @scriptdir\pics in eine ContainerDatei schreiben
[/autoit][autoit][/autoit][autoit]$aFilelist = _FileListToArray(@ScriptDir & "\pics", "*", 1) ;nur Dateien anzeigen, Filter ggf anpassen
[/autoit][autoit][/autoit][autoit]
_ArrayDisplay($aFilelist)$hContainer = FileOpen("container.dat", 18) ;Containerdatei öffnen im binärmodus und ehemalige Datei löschen
[/autoit][autoit][/autoit][autoit]
FileWrite($hContainer, Hex($aFilelist[0], 4));Anzahl Dateien in den Container schreibenFor $i = 1 To $aFilelist[0] ;alle Dateien im Verzeichnis
[/autoit][autoit][/autoit][autoit]
$dateiinhalt = FileRead(@ScriptDir & "\pics\" & $aFilelist[$i]) ;Dateiinhalt im Verzeichnis einlesen
$dateigroesse = @extended ;Dateigrösse ermitteln
FileWrite($hContainer, $aFilelist[$i] & Chr(0)) ;Dateiname schreiben, nullterminiert
FileWrite($hContainer, Hex($dateigroesse, 8)) ;Dateigröße schreiben
FileWrite($hContainer, $dateiinhalt) ;Dateiinhalt schreiben
NextShellExecuteWait("scite.exe", "container.dat") ;dateiinhalt anzeigen in scite
[/autoit][autoit][/autoit][autoit]
;nun sind alle Dateien fertig verpackt in der Container-DateiMsgBox(0, 0, "Dateien sind im Container. Nun Dateien wieder auspacken und in Verzeichnis \pics2 schreiben...")
[/autoit][autoit][/autoit][autoit]
;alle wieder auspacken in das Verzeichnis \pics2If Not FileExists(@ScriptDir & "\pics2\") Then DirCreate(@ScriptDir & "\pics2") ;wenn Verzeichnis nicht existent, dann erstellen
[/autoit][autoit][/autoit][autoit]$hContainer = FileOpen("container.dat", 16) ;Containerdatei binär öffnen
[/autoit][autoit][/autoit][autoit]
$dateiinhalt = BinaryToString(FileRead($hContainer)) ;dateiinhalt binär einlesen
;ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $Dateiinhalt = ' & $dateiinhalt & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
$anzahl_dateien = Dec(StringLeft($dateiinhalt, 4)) ;die ersten 4 byte sind die Anzahl der im Container enthaltenen Dateien
;ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $anzahl_dateien = ' & $anzahl_dateien & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console$position = 5 ;aktuelle Position eines Zeigers auf die Daten im Container, der Zeiger zeigt auf das 5. Byte in der Containerdatei, also auf das erste Byte des Namens der 1. png-Datei
[/autoit][autoit][/autoit][autoit]For $i = 1 To $anzahl_dateien ;alle Dateien im Container auspacken
[/autoit][autoit][/autoit][autoit]
;name der Datei im Container extrahieren
$pos_nullbyte = StringInStr($dateiinhalt, Chr(0), 1, 1, $position) ;nächstes nullbyte finden, dazwischen steht der Name der Datei
;ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $pos_nullbyte = ' & $pos_nullbyte & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
$Dateiname = StringMid($dateiinhalt, $position, $pos_nullbyte - $position) ;Dateinamen auslesen
;MsgBox(262144, 'Debug line ~' & @ScriptLineNumber, 'Selection:' & @LF & '$Dateiname' & @LF & @LF & 'Return:' & @LF & $Dateiname) ;### Debug MSGBOX
$dateilaenge = Dec(StringMid($dateiinhalt, $pos_nullbyte + 1, 8)) ;Dateilänge extrahieren
;MsgBox(262144, 'Debug line ~' & @ScriptLineNumber, 'Selection:' & @LF & 'stringmid($Dateiinhalt,$pos_nullbyte+1,$pos_nullbyte+9)' & @LF & @LF & 'Return:' & @LF & StringMid($dateiinhalt, $pos_nullbyte + 1, $pos_nullbyte + 9)) ;### Debug MSGBOX
;ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $dateilaenge = ' & $dateilaenge & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
$position = $pos_nullbyte + 9 ;zeiger auf die Position des ersten Bytes des Dateiinhaltes
$file = StringMid($dateiinhalt, $position, $dateilaenge) ;dateiinhalt auslesen
FileWrite(@ScriptDir & "\pics2\" & $Dateiname, $file) ;und in Datei schreiben oder alternativ direkt in den Speicher
$position += $dateilaenge ;zeiger auf erstes Byte des nächsten Dateinamens setzen
Next$aFilelist = _FileListToArray(@ScriptDir & "\pics2\", "*", 1) ;nur Dateien anzeigen, Filter ggf anpassen
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
_ArrayDisplay($aFilelist);das extrahieren der Dateiinhalte im Container geht bestimmt auch mit einer Zeile mittels regexp^^
[/autoit]
man kann noch reichlich kürzen, aber so ist es etwas verständlicher imho -
Das einfachste?
Alle Dateien binär öffnen und den Inhalt hintereinander in eine neue Datei schreiben. Alternativ Zippen.... -
hehe, bei mir auch schon 30 Jahre her^^...
aber nochmal zu deiner Frage:
du brauchst natürlich "irgendwelche" Informationen zu deinem gesuchten Punkt. Entweder direkt die Koordinate, oder ein Teilungsverhältnis oder irgend etwas anderes, daß man in die Gleichung reinbauen kann.Was du suchst ist eine Funktion $ypsilon=ypsilonvonx(x0,y0,x1,y1,x_koordinate_auf_der_gerade), aber das solltest du hinbekommen nun^^
-
hehe^^
wenn m=-0,4, dann ist m=-0,4 aber minus geteilt durch minus = plus daher war deine Rechnung ein bisschen falsch aber du hast GESEHEN, dass es falsch war, gibt ne 1 mit Sternchen^^
Das ist schon ok so....einsetzen von x1=0 und y1=0 und m=0,4 in y=mx+b ergibt
0=0,4 * 0 +b => b=0 war klar, da die gerade durch den Ursprung (0|0) geht
also ist deine Gleichung y=0,4 * x + 0 zu jedem x bekommst du nun das passende y
y=0,4 * xPunkt x=25
y=0,4 * 25 = 10 x=25 => y=10Hausaufgabe:
P1(17|22)
P2(-13|12)
an welchem Punkt schneidet die Gerade
a) x=0
b) y=0 -
Mir fallen da auf Anhieb mehrere Lösungsmöglichkeiten ein. Eine wäre z.B. der Strahlensatz oder die
Geradengleichung y=mx+b
Die Steigung m=(y0-y1)/(x0-x1) (sprich delta y / delta x) ausrechnen und mit x0 und y0 in die Geradengleichung einsetzen ergibt b.
Liefert zu jedem x das passende y auf der Gerade. -
Zitat von gtaspider
So unwahrscheinlich in unser Kapitalistischen Welt? ;D
träum weiter...

Infos bzgl livestream:
Zuerst die schlechte Nachricht, anders als bei den Winterspielen wird bei ZDF diesmal NICHT in HD gestreamed, sondern lediglich 688x384.sportschau.de bietet 3 Qualitätsstufen an:
512x288, 960x544, und HD in 1280x720....Also betet, daß die ARD-Server am 18.Juni ab 13.30 (Deutschland/Serbien) kurz nach der Mittagspause nicht zusammenbrechenDa RTL sowieso nur Spiele ohne deutsche Beteiligung eingekauft hat, ist der flash-Stream mit 512x288 zu verkraften

Die Telekom streamt für 4,95€(jeweils Juni+Juli) alle 64 Partien live aufs Handy per UMTS.
Also birngt eure Flashplayer auf den neuesten Stand, alternativ bei ZDF gibts WM- und Quicktime-Streams.
-
Ja, wenn du bei t-online oder alice (bei den anderen ggf mal anrufen) einen Kabelvertrag hast, dann bekommst du HDTV von ARD und ZDF (also auch Arte usw) gewissemassen "umsonst". Du musst dann nur noch den Stream abgreifen und diesen wie schon angesprochen H.264 dekodieren. Ins Kabel werden ARD und ZDF sowieso eingespeist, kostet nix ausser nem HDTV-Receiver bzw -Karte für den PC. Für die WM lohnt sich das, denn die Öffentlich-Rechtlichen übertragen 46 von 53 Spielen in HDTV, die restlichen hat RTL gekauft imho.
denn der Vorteil ist, von ARD und ZDF kann man, da nicht verschlüsselt, beliebig aufnehmen, vor-zurückspulen und alles machen, was bei den Privaten nur mit "schummeln" machbar ist...Oder meintest du einen live-Stream im Internet in HDTV? DER war gut

-
Genau dafür sind wir ja da^^. "Man kann alt werden wie ne Kuh, man lernt immer was dazu!"
In diesem Sinne, weiter so! -
wieso überhaupt if/then?
[autoit]GUICreate("Option wählen", 600, 70, 1, 1)
[/autoit][autoit][/autoit][autoit]
$Standby = GUICtrlCreateButton("Standby", 0, 10, 100, 50)
$Herunterfahren = GUICtrlCreateButton("Herunterfahren", 100, 10, 100, 50)
$HerunterfahrenT = GUICtrlCreateCombo ("Zeiten zum Herunterfahren", 500, 10, 100, 50)
GUICtrlSetData(-1, "5min|10min|20min|40min|60min|80min|100min")
$_combo_text = GUICTRLRead($HerunterfahrenT)
$Abmelden = GUICtrlCreateButton("Abmelden", 200, 10, 100, 50)
$Neustarten = GUICtrlCreateButton("neustarten", 300, 10, 100, 50)
$Schliessen = GUICtrlCreateButton ("schließen", 400, 10, 100, 50)GUISetState(@SW_SHOW)
[/autoit]
While 1
$msg = GUIGetMsg()
Switch $msg
Case $Standby
Shutdown(64)
Case $Herunterfahren
$minuten=number(stringtrimright(GUICtrlRead($HerunterfahrenT),3))
Sleep (60000*$minuten)
Shutdown (1+8)
Case $Abmelden
Shutdown(0)
Case $Neustarten
Shutdown(2 + 16)
Case $Schliessen
GUISetState(@SW_HIDE)
EndSwitch
WEnd
While 1
Sleep(500)
WEnd -
Schau mal in die Funktion _FTP_UploadProgress() der FTP_EX.au3. Dort musst du nur noch ein passendes Sleep() in die For/To-Schleife einbauen (dort wo die einzelnen $parts hochgeladen werden).
-
NERD-Kompatibel :o)
[autoit]$string="000001203456789"
[/autoit]
$ergebnis=stringtrimright(StringFormat("%d",$string),5)
MsgBox(262144,'Debug line ~' & @ScriptLineNumber,'Selection:' & @lf & '$ergebnis' & @lf & @lf & 'Return:' & @lf & $ergebnis) ;### Debug MSGBOXEben gerade gefunden:
Zitat von GeorgeString Regular Expressions are very powerfull and should be used when required but I do not advocate their abuse. That is, using them when a simple String function will do the job.