F@H Logitech G15 Plugin

Er liest den Status aus den logs... wenn das auf 1% springt, sollte es wieder stimmen.

Den Status mit der FINISHED_UNIT werde ich mir mal merken und als "fertig" in die nächste version einbauen.
 
Es ging bis zur 3 und dann kam "Exception has beenthrown by the target of an invocation."

Dann startet das Config-Programm und wenn ich neu wähle, stürzt er mit "Unhandeled exception has occurred in your application." ab.
Hier die Details:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ComponentModel.Win32Exception: Falscher Parameter
at System.Drawing.Icon.Initialize(Int32 width, Int32 height)
at System.Drawing.Icon..ctor(SerializationInfo info, StreamingContext context)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle._SerializationInvoke(Object target, SignatureStruct& declaringTypeSig, SerializationInfo info, StreamingContext context)
at System.Reflection.RuntimeConstructorInfo.SerializationInvoke(Object target, SerializationInfo info, StreamingContext context)
at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(Object obj, SerializationInfo info, StreamingContext context)
at System.Runtime.Serialization.ObjectManager.FixupSpecialObject(ObjectHolder holder)
at System.Runtime.Serialization.ObjectManager.DoFixups()
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Resources.ResourceReader.DeserializeObject(Int32 typeIndex)
at System.Resources.ResourceReader.LoadObjectV2(Int32 pos, ResourceTypeCode& typeCode)
at System.Resources.RuntimeResourceSet.GetObject(String key, Boolean ignoreCase, Boolean isString)
at System.Resources.ResourceManager.GetObject(String name, CultureInfo culture, Boolean wrapUnmanagedMemStream)
at FAH_g15Config.Properties.Resources.get_FAHg15()
at FAH_g15Config.EditWindow..ctor(Boolean Edit, String Name, String Path)
at FAH_g15Config.Mainform.NewElementWindow()
at FAH_g15Config.Mainform.button3_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
FAH@g15Config
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///D:/Install/G15/FAH@g15/FAH@g15Config.exe
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
 
Ich kann mir schon denken, was da knallt, obwohl es nicht knallen dürfte... Sei so nett und für das aus dem Anahng nochmal aus und sag mir wieder die Nummer :)

(Grad nen Fehler entdeckt: 3 kommt doppelt vor, bitte ggf ansagen, ob es die erste oder zweite war ;) )
 
Ok, damit ist der Fehler eingekreist, ist auch das, was ich vermutet habe.
Ist bei beiden Sachen übrigens das gleiche, nur beim zweiten habe ich es nicht aufgefangen, da es nicht in der Startroutine liegt und dort eigentlich nix passieren sollte.

Auch wenn dort es eigentlich unmöglich ist, dass es dort knallt, werde ich versuchen das irgendwie zu fixen.

EDIT: So, ich habe mal was verändern. Könnte daran liegen, auch wenn es eigentlich nicht so sein sollte...
 
Zuletzt bearbeitet:
Also, nochmal eine weitere überarbeitete Version, die lauffähig sein sollte (auch auf x64).

Zudem lad ich euch den Quellcode hoch, mit dem ihr das Programm selber noch modifizieren könnt. Viel Spaß beim anpassen ;)
 
@benjasso:

So, diese Version sollte nun bei dir laufen, da der Fehler in jedem Fall aufgefangen wird, aber sonst nicht den Rest des Programms beeinflusst.

Allerdings finde ich es schon ein wenig merkwürdig... Diese Zeile DARF eigentlich gar nicht crashen...

Ich versuche trotzdem rauszufinden, was ich noch machen kann.


@Mayday21:

Danke für den Source, werde den mir mal ansehen und vlt was übernehmen :)

EDIT: Naja, "Source" ist ein wenig übertrieben... das wichtige ist ja alles in dlls (Der Reflektor ist toll :P)

Noch ein kleiner Tipp: ArrayList sollte nicht mehr verwendet werden, es ist veraltet ;-)
 
Zuletzt bearbeitet:
@benjasso: Sei dann bitte nochmal so nett, dass du das aus dem Anhang ausfühst und mir die erzeugte Exception.txt übermittelst.

Eventuell erfahre ich so mehr über den Fehler.
 
Sagt zwar nicht viel, aber bitte.

Und jetzt da ich eine config-Datei habe, startet das normale Programm nicht mehr.
Code:
FAH@g15 hat ein Problem festgestellt und muss beendet werden.
 
So, hier ist die Version 1.1 (natürlich wie immer Virenfrei);

Neuerungen:
+Kleine verbesserungen am Code, Text und in der Rechtschreibung
+Fertig nicht mehr als Error anzeigen
+verbleibende Zeit auf Basis der letzten Frame anzeigen, per Button 3 umschalten
+Zeitbug beim Auslesen fixed
 
Die Version funzt bei mir komplett, nachdem ich die LgLCD.dll aus System32 in den Ordner kopiert hab :D
Dankeschön... Kannst du evtl. aber noch einbauen, dass die Clienten auch nebeneinander angezeigt werden können und dass man die Zeichen für die Tasten ausblenden kann, dafür aber zB rechts unten in der Ecke ein Pfeil nach unten ist, damit man sieht, dass dadrunter noch etwas ist?
Ich würd zB gerne immer 2 CPU- Clienten nebeneinander haben und den Grafikkarten Clienten alleine auf einer Zeile... Bei nem Quadcore und ner Graka mit insgesamt 5 Clienten reicht der Platz nicht mehr^^
 
Naja, das ist wegen der freien Namensgebung blöd, so kann es zu Fehlern kommen...
Ich werds mir mal anschauen, mach dir aber nicht zu viele Hoffnungen...

EDIT: Wegen der Fehleranzeige kann man das eh vergessen, da dann die ganze Zeile gebraucht wird...
 
Schön, wenn es bei den meisten geht. Bei mir läuft es nach wie vor nicht. Wenn mir einer sagen kann warum, ober zumindest Vermutungen hat sind diese sehr gern gesehen.
 
Hast du den Logitech Treiber (nen halbwegs aktuellen) drauf? Die LgLcd.dll ins Verzeichnis kopiert? Ist die auch intakt oder evtl. beschädigt?
 
Also ich habe den Treiber 2.02, welcher der neuste sein sollte. Die LgLcd.dll, von der ersten Version glaube, hab ich in den System, den System32 und den SysWOW64-Ordner kopiert. Von den .net-Frameworks hab ich auch einiges installiert.
 
Zurück