Leider muss an dieser Stelle mitgeteilt werden, dass Wolfgang Reszel seine Arbeit an ac'tivAid beendet hat. Eine Entwicklerversion von ac'tivAid gibt es auf meiner Webseite. Gruß, Michael
Der Bugtracker wurde aus Sicherheitsgründen abgeschaltet, diese Website dient nur noch als statisches Archiv. |
||
Willkommen beim Bugtracker zu ac'tivAid. Ac'tivAid ist ein AutoHotkey-Skript, welches zuletzt in c't 12/08 ausführlich vorgestellt wurde. Wenn Sie in der stabilen Version einen Fehler finden, testen Sie bitte erst die aktuelle Beta-Version, bevor Sie den Fehler melden! Um evtl. schon hier behandelte und geschlossenen Themen mit der Suche zu finden, muss in der erweiterten Suche bei Status "Alle offenen Aufgaben" auf "Alle Status" umgestellt werden. |
Letzte stabile Version bei Heise.de: 1.3.1 Letzte beta Version 1.3.2 beta1 : activaid_beta.exe | portable_activaid_beta.exe Entwicklerversion von Michael Änderungen, Liesmich/Hilfe, FAQ und Themen-Special (bei www.heise.de) Digital Upgrade haben ein Video zu ac'tivAid 1.1.8.1 gedreht, wo ein paar Funktionen kurz angesprochen werden. |
FS#957 - MultiClipboard "Memory Limit reached"
Angelegt Oliver Kötter (owilsky) - Mittwoch, 13. Juni 2007 - 08:42
Zuletzt bearbeitet von Wolfgang Reszel (Tekl) - Montag, 19. November 2007 - 13:34
|
Beschreibung
Ich habe in MultiClipboard die Option “Strg-C und Strg-X überwachen”
Vielleicht kann man die Meldungen |
Montag, 19. November 2007 - 13:34
Grund für Schließung: keine Rückmeldung erhalten
Auch ich bekomme diese Meldung immer wieder. Seit heute aber nicht nur bei grossen Datenmengen, sondern fast bei jedem Ctrl-C. Ich habe Version 1.1.8.6. Das Problem liegt in der Zeile 8217.
Mir wäre es recht, wenn das MultiClipboard neue Einträge die eine bestimmte Grösse überschreiten einfach ignorieren würde.
Ich suche noch nach tricks, die Größe der Zwischenablage zu ermitteln, ohne dass ich sie abfrage. Bringt es denn was, wenn man ac'tivAid.ahk am Anfang um "#MaxMem 256" oder gar mehr ergänzt? Das dumm ist, dass ich diese Meldung noch nicht hatte, da ich wohl nicht größere Zwischenablagen als 64 MB erzeuge.
Meistens passiert es mir, wenn ich mit IrfanView ein Bild meiner Digitalkamera betrachte (8 Mega Pixel) und dann mit Ctrl-C das ganze Bild ins Clipboard kopiere. Offensichtlich wird da intern irgend ein aufwändiges Format verwendet. Letzte Woche hatte ich jedoch auch einen über 250 MB grossen Text im Clipboard. Ich denke #MaxMem 256 dürfte das Problem soweit nach hinten schieben, dass es nicht mehr auftritt.
Ich frage mich allerdings was die Variable dataSize in Zeile 8217 enthält. Enthält diese nicht die Grösse?
Interessanterweise funktioniert MultiClipboard auch mit so grossen Inhalten. Ich kann also mit Win-Shift-1 ein Bild einfügen auch wenn ich vorher die "Memory Reached" Meldung erhalten habe.
Danke, ich habe in Beta 1.1.8.7 jetzt erst mal MaxMem auf 512 gesetzt. Das Problem mit der Fehlermeldung ist, dass AutoHotkey nicht gut mit binären Variablen umgehen kann. Ich wandle die Zwischenablage zwecks Vergleiche in Hex-Strings, was den Speicherverbrauch verdoppelt. Ein Bild welches also 32 MB im Speicher belegt, sprengt bei den Vergleichen also das Limit. Das Schreiben der Zwischenablage auf Festplatte unterliegt keinen Größenbeschränkungen, was erklärt, dass es weiterhin funktioniert. Evtl. stimmt nur die Anzeige im Menü dann nicht.
Da ich wie gesagt viel mit großen Excel-Spalten arbeite, kommt es vor, dass die Fehlermeldung nicht kommt - offenbar, weil ich noch unter dem Limit bin -, allerdings kommt es auf meinem Rechner öfter zu einer Verzögerung von 5-10 Sekunden (1,25 GB RAM, P4 3.0 GHz).
Vielleicht kann man eine Option einbauen, die Strg-C nur bis zu einer bestimmten Größe überwacht, z.B. nur bis 2MB oder so?
Um die Größe zu ermitteln muss ich die Zwischenablage aber erst mal in eine Variable kopieren. Die Verzögerung in Excel hat aber vermutlich mit
FS#970zu tun.Die Meldung kommt mit der Version 1.1.8.7 tatsächlich nicht mehr. ABER! Nach jedem Ctrl-C eines Bildes ist AutoHotkey für zirka zwei Minuten mit irgendwas beschäftigt. Da ac'tivAid mit der Priorität "Above Normal" läuft ist der Rechner in dieser Zeit nicht zu bedienen. Das #MaxMem 256 ist damit definitiv nicht die Lösung!
Bei mir sind es zwar keine 2 Minuten, aber immerhin 20-25 sec, in denen der Rechner nach jedem Kopiervorgang von Autohotkey ausgelastet ist. Damit ist MC quasi unbenutzbar.
nur in excel, oder überall? Auch ohne aktivierten Virenscanner?
überall. allerdings mit aktivem Virenscanner. Ist hier (Arbeitsplatzrechner) auch nicht deaktivierbar.
Selbst einfache Texte? Kannst du denn Ausnahmen im Virenscanner festlegen?
Selbst, wenn ich ein einzelnes Wort aus einer E-Mail kopiere... Ausnahmen sind nicht möglich
Sag mal, hast du in der 1.1.8.8 etwas geändert? Bei mir landen keine Bilder mehr im MultiClipboard. Nicht dass ich das bräuchte, aber es fiel mir einfach auf!
Oh ja, steht noch gar nicht im Changelog. Es gibt in der INI-Datei nun die Variable ClipSizeLimit, welche standardmäßig auf 16384 Bytes gesetzt ist. Vermutlich brauchen deine Bilder mehr Platz im Speicher. Die Option dient dazu große Zwischenablageninhalte in MultiClipboard zu ignorieren. Evtl. muss ich einen höheren Standardwert verwenden. Bitte mal testen ob es daran liegt.
Meine Versuche das ClipSizeLimit in der INI zu setzen führen meistens dazu dass das Startup-Icon von ac'tivAid nicht mehr verschwindet! ac'tivAid selber scheint aber zu Laufen. In welcher Einheit ist dieser Wert denn? Hier schreibst du "Bytes"; im Code steht hinter dem 16384 der Kommentar "16M". Einen Einfluss auf das Verhalten kann ich aber nicht feststellen. Sowohl mit dem Standardwert als auch mit 100000000 kann ich keine Bilder durch Ctrl-C ins MultiClipboard einfügen.
Mit der Win-Alt-x Kombination funktioniert es jedoch in Abhängigkeit der Bildgrösse. D.h. kleine Bilder funktionieren, grosse funktionieren nicht.
Ich habe das jetzt auf MB geändert. Klappt das jetzt?