Beiträge von GtaSpider
-
-
$LVS_LIST + $WS_VSCROLL als Style sollte klappen
Nope, erinnere mich. Probiers mal anstatt mit LVS_LIST mit $LVS_REPORT + $LVS_NOCOLUMNHEADERGruß
Spider -
Hey Progandy,
Perfekt, funktioniert einwandfrei! Falls du irgendwann mal in Kiel oder Umgebung bist, meld dich, dann bekommste ein Bierchen ausgegeben Vielen Dank!
Gruß
Spider -
Heyho,
Danke erstmal für deine Antwort Andy, leider wars das noch nicht ganz. Wenn ich bei DllStructCreate() den Pointer (der übrigends immer negativ ist, gehört das so?) angebe, dann gibt mir die StructCreate Funktion zwar kein Fehler zurück, aber sobald ich versuche die Struct mit DllStructGetData auszulesen, bekomme ich ein Absturz ("AutoIt funktioniert nicht mehr", Windows Fehlermeldung: !>21:40:17 AutoIT3.exe ended.rc:255)
Das interessante ist, dass ich bei DllStructCreate() bei dem Pointer alles mögliche hinschreiben kann (z.B. auch 219 oder so..) und er mir trotzdem keinen Fehler ausgibt bei der Create funktion, nur beim auslesen dann (den gleichen).
Hier auch noch mal ein bisschen Sample Code in allen Möglichen Programmiersprachen:
http://www26.zippyshare.com/v/68880485/file.htmlSpoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
Func __PICO_Callback_MyGetOverviewBuffers($iOverviewBuffers, $iOverflow, $uiTriggeredAt, $iTriggered, $iAutostop, $nValues)
_Log("Callback:")$hTestStruct = DllStructCreate("dword["&$nValues&"]", $iOverviewBuffers);Funktioniert, ohne Error, allerdings kann ich bei iOverviewBuffers auch irgendeine andere Zahl einsetzen. iOverviewBuffers ist immer negativ (-4953 z.B.)
[/autoit] [autoit][/autoit] [autoit]
ConsoleWrite(@error & @LF)
$sTest = DllStructGetData($hTestStruct,1); Hier stürtzt AutoIt immer am ("AutoIt funktioniert nicht mehr"). Da ist es auch egal, welchen Wert ich bei iOverviewBuffers einsetze.
MsgBox(0,"",$sTest)_Log("iOverviewBuffers: " & $iOverviewBuffers)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_Log("iOverflow: " & $iOverflow)
_Log("uiTriggeredAt: " & $uiTriggeredAt)
_Log("iTriggered: " & $iTriggered)
_Log("iAutoStop: " & $iAutostop)
_Log("nValues: " & $nValues)EndFunc ;==>__PICO_Callback_MyGetOverviewBuffers
[/autoit]Ich weiß, nicht ganz einfacher Stoff, aber ich wäre euch wirklich super dankbar, wenn mal jemand drüber schauen kann und mir eventuell den richtigen Weg zeigen kann, stehe hier grade leider ziemlich auf dem Schlauch
Gruß und vielen Dank,
Spider -
Heyho,
Hab ne Funktion, der ich ein Pointer zu einer Callback Funktion übergebe. Das Funktioniert (mittlerweile) auch gut, Callback wird aufgerufen. Nun bekomme ich aber anscheindend einen Pointer zu einer Struct zurück, die die DLL erstellt:
Zitatshort **overviewBuffers:
overviewBuffers, a pointer to a location where
ps2000_get_streaming_last_values() will store a pointer to its
overview buffers that contain the sampled data. The driver creates
the overview buffers when you call ps2000_run_streaming_ns() to
start fast streaming.
Jemand ne Idee wie ich den auslesen kann? DllStructGetData funktioniert hier (wie erwartend) nicht.Hier mal der Auszug aus der Hilfe, die komplette gibt es hier:
http://www.picotech.com/document/pdf/ps2000pg.en-4.pdf
[Blockierte Grafik: http://k76t.img-up.net/Unbenannt9qeh9.jpg]Und hier ein Auszug aus den Sourcecode (Zeile 50ff findet das Auslesen statt)
Spoiler anzeigen
[autoit];(c) Max Reble - 2011
[/autoit] [autoit][/autoit] [autoit]
;femto, pico, nano, micro, milli, sec
Global Enum $PS2000_FS, $PS2000_PS, $PS2000_NS, $PS2000_US, $PS2000_MS, $PS2000_S
Global $hPICO_CallBackRegister = DllCallbackRegister("__PICO_Callback_MyGetOverviewBuffers", "none", "short;short;ulong;short;short;ulong")Global $bGO = True
[/autoit] [autoit][/autoit] [autoit]Global $sPICO_DLL = "..\SDK\PS2000.dll"
[/autoit] [autoit][/autoit] [autoit]
Global $hPICO_OpenDlll = DllOpen($sPICO_DLL)
If @error Or $hPICO_OpenDlll = 0 Then ExitGlobal $hPICO_Handle
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]_PICO_RunStreamingModeNS(1, $PS2000_US, 10000, 0, 100, 50000)
[/autoit] [autoit][/autoit] [autoit]While $bGO
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_PICO_GetStreamingLastVal()
Sleep(100)
WEndFunc _PICO_RunStreamingModeNS($iSampleIntervalMS = 10, $iTimeUnits = 3, $iMaxSamples = 1000, $iAutostop = 0, $iNoOfSamplesAgg = 1, $iOverviewBufferSize = 20000)
[/autoit] [autoit][/autoit] [autoit]
_Log("ps2000_RunStreamingModeNS ==> ", 0)
$aDLL = DllCall($hPICO_OpenDlll, "int", "ps2000_run_streaming_ns", "short", $hPICO_Handle, _
"ulong", $iSampleIntervalMS, _
"short", $iTimeUnits, _
"ulong", $iMaxSamples, _
"short", $iAutostop, _
"ulong", $iNoOfSamplesAgg, _
"ulong", $iOverviewBufferSize)
If @error Then Return SetError(1, @error, _log("Error by DLLCall: 0x" & @error))
If $aDLL[0] = 0 Then Return SetError(2, 0, _log("Error Return by function."))
_log("Success")
Return $aDLL[0]
EndFunc ;==>_PICO_RunStreamingModeNSFunc _PICO_GetStreamingLastVal()
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_Log("ps2000_GetStreamingLastVal ==> ", 0)
$aDLL = DllCall($hPICO_OpenDlll, "short", "ps2000_get_streaming_last_values", "short", $hPICO_Handle, _
"ptr", DllCallbackGetPtr($hPICO_CallBackRegister))
If @error Then Return SetError(1, @error, _log("Error by DLLCall: 0x" & @error))
If $aDLL[0] = 0 Then Return SetError(2, 0, _log("Error Return by function."))
_log("Success")
Return $aDLL[0]
EndFunc ;==>_PICO_GetStreamingLastValFunc __PICO_Callback_MyGetOverviewBuffers($ptrOverviewBuffers, $iOverflow, $uiTriggeredAt, $iTriggered, $iAutostop, $nValues)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_Log("Callback:")
$iptr = DllStructGetData($ptrOverviewBuffers, 1)
ConsoleWrite("ptrerr: " & @error & @LF)
_Log("ptrOverviewBuffers: " & $ptrOverviewBuffers)
_Log("iOverflow: " & $iOverflow)
_Log("uiTriggeredAt: " & $uiTriggeredAt)
_Log("iTriggered: " & $iTriggered)
_Log("iAutoStop: " & $iAutostop)
_Log("nValues: " & $nValues)
EndFunc ;==>__PICO_Callback_MyGetOverviewBuffersFunc _log($sLogText, $iCRLF = True)
[/autoit]
If $iCRLF Then $sLogText &= @CRLF
ConsoleWrite($sLogText)
EndFunc ;==>_logGruß, und vielen Dank schon Mal
Spider -
Heyho,
Habe grade ein neues Netzteil eingebaut, 560 Watt, aber dafür Marke. Scheint nun alles zu laufen, danke euch
Gruß
Spider -
Hallo,
Aber die TDP (maximale Leistungsaufnahme) des CPUs is 95 Watt und von der GTX 280 is es ca. 240 Watt. Was frisst denn noch viel Watt im PC? Der RAM und das MB sollten doch nicht so viel verbrauchen, oder?! Und die SSD doch eigentlich auch nicht!?
Edit: Mir ist grade aufgefallen, dass ich ein komisches Klickern höre, bevor sich der PC resetet (klingt wie irgendwelche Relais). Was könnte das sein?
Edit2: 530 Watt sind es. Hier mal ein SCreenshot von dem Teil, hab leider keine Ahnung, was die Max Combined Wattage bedeutet, kann es sein, dass unter einer bestimmten Spannung nicht genug Watt erzeugt wird?
[Blockierte Grafik: http://a70t.img-up.net/IMAG022859h2f.jpg]
Würde mir halt gerne relativ sicher sein, bevor ich nochmal ~100€ für ein neues Netzteil investiereGruß,
Spider -
Heyho,
Habe mir grade ein neues System gekauft, repsektive ein halb neues System.
Motherboard: P8P67-M
Prozessor: Intel i7 2600K
RAM: 8gb DDR3
Graka: nVidia GTX 280
Netzteil: 550 Watt.So, sobald ich jetzt die GPU nur minimal auslaste (es reicht schon den Flashplayer in Fullscreen zu öffnen, dann passiert das ca. nach 30 sekunden, wenn ich benchmarkstests mache passiert es sofort) startet mein System neu. Ohne Bluescreen oder sonst irgendwelche Einträge im Ereignisprotokoll. Einfach zaaap.. und aus. Und dann startet er neu. Woran kann das liegen?! Kann das Netzteil zu schwach sein? Könnte das ein Reset verursachen? Die Grafikkarte ist relativ warm, aber nicht zu warm (67-70°C im Idle).
Über Hilfe würde ich mich wie immer sehr freuen.
Gruß,
Spider -
Heyho,
Probiers doch so Überprüft einfach alle angeschlossenen Geräte
Spoiler anzeigen
[autoit]$aListDrives = DriveGetDrive("ALL")
[/autoit] [autoit][/autoit] [autoit]
If @error Then Exit
Local $sLW = False
For $i = 1 To $aListDrives[0]
If FileExists($aListDrives[$i]&"\8GB Stick\AAAAA\Programme\Ashampoo\Ashampoo Registry Cleaner\ashampoo_registry_cleaner_1.00_9031.exe") Then $sLW = $aListDrives[$i]
Next
If Not $sLW Then Exit MsgBox(16,"","LW nicht gefunden :-(")MsgBox(0,"","Das LW ist "&$sLW)
[/autoit]Gruß
Spider -
Hallo,
@euka: Wow. Hätte ich nicht für möglich gehalten, habe hier ne Framerate von 130fps. Abgefahren... Der Vorteil ist tatsächlich, dass mir auch schon das direkt so in eine Struct gelegt wird von der API. Problem wird wahrscheinlich grade, dass nicht 20 Punkte sondern eigentlich 1024 Punkte geplant sind, da ist aber natürlich die Frage wie Sinnig das nachher ist, da man eh nicht alles auslesen kann. Bei 200 habe ich immer noch eine ausreichende Framerate. Das Ding ist halt, das Teil soll später nicht auf einem Quadcore laufen Ein Atom wirds hoffentlich auch nicht, aber wie gesagt, kein High-End PC.
Andy: Vielen Dank! 1HZ kann das Oszi leider nicht emulieren, das fängt erst ab 1000HZ an. Eigentlich sollte es so aussehen, wie im Bild im ersten Post.
Ich greife direkt mit einer API (dll) auf die Box zu, das ist sehr schön gemacht und funktioniert Tadellos. Ich schätze wie gesagt, dass irgendwo noch ein Parameter falsch gesetzt ist. Das Teil geht bis in Femtosekunden bereich, wobei ich es für sehr unrealistisch halte, dass man das via USB auslesen kann Für mich sind tatsächlich nur die millisekunden relevant. Mit den ganzen DLL Calls die von nöten sind (3 Stück pro Auslesen) bin ich ca. bei 2ms/Auslesen.
Bei mir siehts dann mitterweile so aus, ist tatsächlich das gleiche Bild wie ich es vorher erzeugt habe, sauber Warum dies keine Sinuskurve ist, und warum es eigentlich egal ist, was ich für eine Kurve sende (Ob Sinus oder Block oder Dreieck), die Kurve trotzdem immer relativ gleich aussieht (aber auch nicht ganz gleich) ist mir zwar bisher ein Rätsel, aber da schau ich erstmal selbst und melde mich zu Not nochmal.
Vielen vielen Dank erstmal an euch allen, hat mir wirklich sehr weiter geholfen
Gruß
Spider -
Hallo Andy,
Der Oszi hat (natürlich) einen internen Buffer, den ich dann sozusagen nach und nach via USB auslese. Aussehen werden die Daten wohl wie folgt, wobei ich mir noch nicht hundertprozentig sicher bin, ob diese Daten auch korrekt sind. Hier zum Beispiel habe ich mit dem eingebauten Generator eine Sinuskurve erstellt, aber die Werte die ich erhalte haben nichts mit einer Sinuskurve zu tun. Aber so bekomme ich bisher die Daten da raus (im Edit, getrennt durch Semikolon, in diesem Beispiel sind es nur 200 Samples)
Gruß
Spider -
Heyho,
Mal eine Frage. Habe mich lange nicht mehr mit dem Thema Grafik in AutoIt auseinandergesetzt, das letze mir bekannte ist GDI+ Ich bräuchte eine möglichst schnelle Engine um ein 2d Grafen zu Zeichen für ein Oszilloskop. Schön währe ne Wiederholfrequenz von 30fps oder mehr, Auflösung sollte so an die 1280x1024 ran gehen. GDI+ wird dafür wohl zu langsam sein, oder? Was gibt es aktuell für Alternativen?
So sollte es später ungefähr aussehen:
autoit.de/wcf/attachment/14661/Vielen Dank,
Gruß
Spider -
Heyho,
Ich stehe mal wieder vor einem mir unlösbaren Problem. Ich bin grade dabei ein kleines Oszilloskop via USB fernzusteuern (PicoScope 2003). Die meisten Funktionen habe ich auch schon impliziert, wie das Verbinden zur box, das Auswählen des Chanels und das starten des Streamings. Das funktioniert alles soweit wunderbar, die Dll gibt immer schon True zurück, also gehe ich mal davon aus, dass das soweit funktioniert.
Leider funktioniert das eigentlich interessante nicht. Nämlich das Streamen. Fürs Streamen braucht die DLL (wie immer) ein Handle der Angeschlossenen Box und außerdem noch einen Pointer zu einer Callback Funktion:
Codeshort ps2000_get_streaming_last_values ( short handle GetOverviewBuffersMaxMin lpGetOverviewBuffersMaxMin )
Hier mal ein C ausschnitt:
Und hier die Dokumentation der DLL, interessant ist da wohl Seite 16 und Seite 54.
http://www.pc-oscilloscopes.com/manuals/ps2000pg-en.pdfUnd hier mein Versuch in AutoIt, der mir immer nur 0 (Fail) zurück gibt:
Spoiler anzeigen
[autoit]Global $hPICO_CallBackRegister = DllCallbackRegister("__PICO_Callback_MyGetOverviewBuffers", "none", "short;short;ulong;short;short;ulong")
[/autoit] [autoit][/autoit] [autoit];[...]
[/autoit] [autoit][/autoit] [autoit]$aDLLret = DllCall($hPICO_OpenDll, "short", "ps2000_get_streaming_last_values", "short", $hPICO_Handle, _
[/autoit] [autoit][/autoit] [autoit]
"ptr", DllCallbackGetPtr($hPICO_CallBackRegister))
If $aDLLret[0] = 0 Then MsgBox(16,"","FAIL"); failed;[...]
[/autoit] [autoit][/autoit] [autoit]Func __PICO_Callback_MyGetOverviewBuffers($iOverviewBuffers, $iOverflow, $uiTriggeredAt, $iTriggered, $iAutostop, $nValues)
[/autoit]
_Log("Callback:")
_Log("iOverviewBuffers: "&$iOverviewBuffers)
_Log("iOverflow: "&$iOverflow)
_Log("uiTriggeredAt: "&$uiTriggeredAt)
_Log("iTriggered: "&$iTriggered)
_Log("iAutoStop: "&$iAutostop)
_Log("nValues: "&$nValues)
EndFuncÜber Hilfe würde ich mich sehr freuen, vielen Dank schon mal
Gruß
Spider -
Heyho,
Habe Win8 einmal auf meinem EEE-Netbook und auf meinem Desktop PC installiert. Auf beiden läuft es super flüssig, Programme starten sofort und beide haben eine Bootzeit von ~10-15 Sekunden. Überraschender ist es wirklich wie gesagt auf dem EEE. Also Hardware scheint Win8 nicht mehr so zu interessieren
asus eee 1000h
Spoiler anzeigen
Desktop
Spoiler anzeigen
Gruß
Spider -
Heyho,
Mach dein anderen Monitor als primären Monitor, so siehts bei mir aus:
[Blockierte Grafik: http://g20t.img-up.net/Untitledsk4uj.jpg]Gruß
Spider -
Heyho,
Also, habe jetzt seit 48h Windows 8 hier auf dem PC. Was mir positiv auffällt ist tatsächlich die Geschwindigkeit und der verbesserte Workflow! Photoshop startet nun in ca. der hälfte der Zeit, als noch unter Windows 7, das OS selbst startet innerhalb von 10 Sekunden. Mit Kompitabilität hatte ich bisher noch keine Probleme, sei es Office, Adobe, AutoIt, Winamp, Chrome, Total Commander oder TRillian. Sie funktionieren alle tadellos. Bei den Treibern hatte ich auch keine Probleme.
Fazit: Wie schon erwartet, ein riesen Vorteil bringt es nicht, aber wenn jemand sowieso grade vor hat, mal wieder ein frisches System zu machen, ist der Griff zu Windows 8 bestimmt kein Fehlgriff.
Gruß
Spider -
@Kaboom: Schau dir mal Field Ops an
-
Danke erstmal an BugFix
Ja klar, aber da man Metro ja komplett abschalten kann ist mir das auch relativ egal. Ich glaub ich haue es die Tage mal auf meinem PC (mit vorherigem Backup) und melde mich dann noch mal, was meine Erfahrungen sind Danke an alle, die sich konstruktiv geäußert haben.
Gruß
Spider -
Heyho,
Argh Ich wollte hier kein Flamewar eröffnen, ich will nicht wissen, was ihr von Windows 7 haltet, nicht was ihr von Ubuntu oder XP haltet, sondern nur was ihr für erfahrungen mit Win8 gemacht habt.
Da werden sich nie alle einig sein (ich zum Beispiel hatte bisher auch nur einen Bluescreen bei Win7, bei einem durchgebrannten RAM auch nicht weiter verwunderlich). Trivialinfo: Unter Win8 sehen die "Bluescreens" nun viel netter aus: [Blockierte Grafik: http://www.tweakpc.de/forum/members/legion-of-the-damned/albums/gedoehns-294/picture2595-win-8-bsod.jpg]Aber das tut ja auch alles nichts zur Sache. Ich bin sehr verwundert über das Problemlose laufen von Windows 8 auf meinem EEE. Kein Bluescreen, keine Grafikglitches, keine Performancelöcher, rein gar nichts. Ich wollte hier nur Fragen ob jemand schon Erfahrungen gemacht hat mit dem Dekstopbetrieb, bitte bleibt beim Thema, danke.
Gruß
Spider -
Heyho,
Naja, ich wollte sowieso die Tage mal wieder ein neues OS aufsetzen (neue Hardware und die ganzen alten Treiber sind noch drauf und diese Win7 Version is jetzt schon seit fast 2 Jahren druff) und da dacht ich mir halt, warum nich gleich Win8, mal ein wenig rein schauen und mit dem Look'n'Feel auseinander setzen, damit die Umstellung später halt nicht zu krass wird. Aber eigetnlich hast du natürlich schon recht, lohnt es sich wirklich? Ich wollte wie gesagt auch schon mal anfangen ein wenig in der Win8 Oberfläche rumzuprogrammieren, vielleicht eigene Kacheln oder so zu schreiben mit AutoIt und ggf. auch eine UDF.
Die Frage ist halt, ob es als instabile Beta anzusehen ist, oder vielleicht doch als stabiles RC? Deswegen hätte ich gerne mal Informationen, falls diesen Schritt schon jemand gemacht hat (scheint ja nicht so zu sein )
Aber danke dir@doc: Win8 wird wohl mitte/ende 2012 als Stable verfügbar sein!
Gruß
Spider