AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

C# Parameter zuweisen

Ein Thema von EWeiss · begonnen am 15. Dez 2009 · letzter Beitrag vom 17. Dez 2009
Antwort Antwort
EWeiss
(Gast)

n/a Beiträge
 
#1

C# Parameter zuweisen

  Alt 15. Dez 2009, 21:48
Mache mal einen neuen Thread da es um eine andere Sprache geht
Bin den rat von Elvis gefolgt und habe nun eine Managed DLL für C# geschrieben sollte mit VB.NET nun funktionieren(nicht getestet)

Hab gestern Nacht noch die C# Anwendung geschrieben.
Leider habe ich das gleiche problem wie vorher die Anwendung läuft nur richtig wenn ich in der Developer Umgebung bin und diese Debugge.
Langsam bekomme ich die Krise finde einfach das Problem nicht warum es als Eigenständige Exe nicht laufen will.

Auch habe ich den Eindruck das unter Windows 7 irgendwie eine falsche GetHINSTANCE übergeben wird.
ICh merke das daran weil keine Text Messagen mehr an das Window gesendet werden .. Im Caption sollte eigentlich der Titel
des gerade abgespielten Songs angezeigt werden.

Das sind meine zwei versuche!
Code:
IntPtr hInstance = Marshal.GetHINSTANCE(Assembly.GetExecutingAssembly().GetModules()[0]);
IntPtr hInstance = Marshal.GetHINSTANCE(typeof(Application).Module);
Aktuell verwende ich die zweite.

Schnipp .. macht dem thread was kleiner
Bei Bedarf kann ich das Sample zuschicken.
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#2

Re: C# Parameter zuweisen

  Alt 15. Dez 2009, 22:15
Application steckt in System.Windows.Forms.dll, dessen Module bringt dir gar nix.
Du willst zum Beispiel sowas hier typeof(Program).Module hernehmen. Wenn Dein Einsprungspunkt in "Program" steckt.
In einer Instanzmethode eines Typen, der in deiner Exe liegt, ginge auch einfach GetType(), oder halt GetExecutingAssembly.

Wofür brauchst du das überhaupt? Ich kann mich nicht entsinnen, wann ich das einmal gebraucht hätte seit ich in .Net entwickle.

Ansonsten zeige mal her was du denn in deiner Echse anstellst was zum explodieren führt.

Du kannst in deinem Einsprungspunkt einen Handler für undhandled Exceptions registrieren, damit du siehst wo es geraucht hat.
http://msdn.microsoft.com/en-us/libr...exception.aspx
.Net Exceptions haben einen Stacktrace, der sollte dich auf die richtige Fährte führen.

Wenn e dann läuft, dann solltest du das was du da bisher in C# geschrieben hast internal deklarieren, damit es nicht außerhalb der Classlib sichtbar ist.
Denn du willst das vernünftig verpacken, so wie das bisher aussieht wirst du kaum einen .Net Dev überzeugen können das nicht augenblicklich wieder zu schließen und nie wieder anzufassen.
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#3

Re: C# Parameter zuweisen

  Alt 15. Dez 2009, 22:52
Zitat:
Wofür brauchst du das überhaupt? Ich kann mich nicht entsinnen, wann ich das einmal gebraucht hätte seit ich in .Net entwickle.
Ich benötige die HInstanze um alle Messagen an die Form hinter der Form zu schicken.
Ohne dem Funktionieren die Plugins überhaupt nicht denn das ist mein Fake_Winamp Handle welches früher Emuliert werden mußte
mit der Winamp Class für Visualisierungen Winamp v1.x

Wenn ich jetzt ein Plugin starte welches sich an meine Anwendung andockt dann wird dieses Unsichtbare Fenster(Handle) als Fake_Winamp Window übergeben.
Das "hwnd_winamp = FindWindow("Winamp v1.x",NULL);" ist mein unsichtbares Window = hInstance.

Ich weiss jetzt nicht ob du verstehst was ich meine.(manchmal drücke ich mich etwas unverständlich aus)

Hab ne PN geschickt.

Danke das du dir die mühe machst mal hineinzuschauen.
Sei bitte nicht zu streng mit mir bin kein C# Developer

gruss Emil
Miniaturansicht angehängter Grafiken
xplug_163.jpg  
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

Re: C# Parameter zuweisen

  Alt 17. Dez 2009, 17:53
Erledigt ..
Funktioniert nun bestens.
Das problem lag bei der AVS.dll

gruss
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz