Laden...

Forenbeiträge von Seikilos Ingesamt 753 Beiträge

05.01.2011 - 12:42 Uhr

Stimmt, ich denke ich habe es immer mit Count<>() also leeren spitzen Klammern versucht, was nicht ging. Intellisense zeigt mir nämlich Count() gar nicht als Methode an, daher hab ich es wahrscheinlich auch nicht probiert.

Nun alles gelöst, vielen dank 😃

05.01.2011 - 11:45 Uhr

Hallo,
mal was nebenbei ohne einen extra Thread zu öffnen. Wenn ich so etwas wie OfType uf eine Collection mache a là
collection.OfType<T>() und darauf ein Count machen möchte, muss ich ja explizit beim Count auch ein T angeben, ist das so richtig? Oder gibt es da einen Trick über implizite Typisierung? Ich mein collection.OfType<T>().Count<Was wohl?>() sollte ja irgendwie defaultbar zu T sein, außer ich will einen parent typen oder so

05.01.2011 - 11:37 Uhr

Oh, genial, habe ich übersehen, ich habe bei Intellisense nur bei .Last rumgelungert.

Danke!

05.01.2011 - 11:19 Uhr

Ich habe eine Collection, die aus beliebigen Untertypen von einer Klasse X bestehen kann.

Ich suche nun ein LINQ Query bei dem ich das Letzte Element aus einer Collection selektiere, das vom Typ T ist.

Geht es anders, als über ein (from x in collection where x is T select x).Last<T>() ?

25.11.2010 - 08:59 Uhr

Das mit Object kompiliert. Werde ich testen. Danke.

Aber verwirrend ist es dennoch. Ich kenne das von C++ dass erst der konkrete Template Parameter zur Kompilierung benutzt wird und erst dann wird mit dem bekannten Typ geprüft, ob das, was ich fabriziert habe auch kompiliert

25.11.2010 - 08:47 Uhr

Ich habe ein Verständnisproblem bei den Generics in dieser Methode:

 protected void creteElement<T>(CreatorBase creator)
      {
        
            T t = (T)(creator.CreateIt());
      }

Das wirft mir die Meldung:


Cannot convert type "MeinTyp" to 'T'

Das sagt er mir bei der definition der Methode. Woher will er dass denn wissen? Ich hab doch noch keine konkrete Instatiierung dieser Methoden mit einem Template Parameter gemacht. Er kann doch T im Moment noch garnicht auflösen.

Die Methode ist so in einer nicht generischen Klasse untergebracht. Ist das das Problem?

25.11.2010 - 08:11 Uhr

Hallo,
ich habe hier eine schöne Wrapper Klasse gefunden:
http://www.elitepvpers.de/forum/epvp-coders/118712-c-windows-api.html

Ich hab die User32 Funktionalität von DaMoe 80 dazu gepackt und kann nun Tastenbefehle an Fenster senden.

Danke für die Hilfe 😃

24.11.2010 - 17:19 Uhr

Achso, jetzt verstehe ich.

24.11.2010 - 16:59 Uhr

Na da hoff ich doch mal, dass das Ding nur für private Testzwecke genutzt wird... Wobei das so schon gegen die Lizenz verstoßen sollte.

Was meinst du?

24.11.2010 - 16:59 Uhr

Hallo,
danke für den Code.
Was mir nicht klar ist, weil ich mich mit WinApi nicht auskenne: Wie kann ich zum Beispiel auf Ok oder "Abort" oder "Abbrechen" bei so einer Anwendung klicken?
Über Forms hätte ich das Element ja gefunden, aber so bin ich unsicher.

24.11.2010 - 15:22 Uhr

Hmm ok, aber wie komme ich an die innereien eines Win32 Handles?
Ich würde sehr ungerne auf WinApi zurückgreifen müssen

24.11.2010 - 14:31 Uhr

Also MessageBox ist ja Modal und ich bin gerade in einem Integrationstest bei dem das Verhalten einer Komponente getestet wird. Units wurden schon getestet, aber die Kombination von Logik, GUI(Modale MessageBox), Folgelogik sind noch nicht verifiziert.

Nun ploppt im automatisierten Test quasi eine Messagebox auf, was ja nicht so hilfreich ist.

Im Testcase mache ich vor dem Aufruf, der zu der Messagebox führt einen Timer auf, der nach einer Sekunde aufgerufen wird. Sprich

  1. timer start
  2. modale box wartet
  3. callback des timers greift.

Meine Hoffnung war nun, dass im callback des Timers über Application.OpenForms oder so auf das modale Fenster im Vordergrund komme.
Nur finde ich das modale fenster einfach nicht

24.11.2010 - 13:54 Uhr

Ich habe eine Applikation die ab und zu Messageboxes generiert. Nun habe ich parallel einen Thread, der ein paar Werte sammeln muss.
Dafür benötige ich jedoch ein Handle auf das aktive fenster. Gibt es da so etwas wie Application.FocusedWindow? Ich kann die Logik der Applikation selber nicht modifizieren, so dass die irgendwo immer ein Flag setzt, wenn ein modales Fenster erzeugt wird.

Ich bin hier also auf die C# Funktionalität angewiesen

17.11.2010 - 15:59 Uhr

Scheiße! Anfängerfehler§$%§

Ich hab da noch durch gesteppt und gedacht "Property Getter wird aufgerufen, alles gut soweit"

Ich glaub ich mach mal ne Pause.

Danke 😃

17.11.2010 - 15:29 Uhr

Tippfehler ja. Sorry beides klein geschrieben.

Ich korrigiere das mal

17.11.2010 - 15:25 Uhr

Hallo,
ich muss sicherstellen, das ich bei einem Event immer nur einmal den gleichen Handler registriere. Gleichzeitig muss das remove save sein. Sprich wenn ein Benutzer
Event -= seinHandler macht, darf da nichts fliegen.

Das wird benötigt, weil nicht garantiert werden kann, ob das remove nach dem add kommt oder nicht.
Folgender Code funktioniert jedoch nicht, das -= wirft eine Exception Object reference not set to an instance of an object.


 protected PropertyChangedEventHandler _foo;
      public event PropertyChangedEventHandler foo
      {
         add
         {
            if (_foo== null ||  _foo.GetInvocationList().Contains(value) == false)
            {
               _foo+= value;
            }
         }
         remove
         {
            // Save remove
            if (_foo!= null && _foo.GetInvocationList().Contains(value) == true)
            {
               _foo-= value;
            }
         }
      }

Ein Breakpoint beim Remove wird jedoch nie angesprungen wenn ich in einer anderen Klasse

 Parent.foo-= Parent_Foo;

aufrufe.
Muss das Event vorher irgendwie existieren?
Edit: Typo korrigiert

17.11.2010 - 14:17 Uhr

Hallo,
ich hatte da mal was im Hinterkopf, bin nun aber unsicher.

Bietet Visual Studio eine Möglichkeit, Stringliterale im Code irgendwie zu sammeln und zu extrahieren um Support für Lokalisierungen zu vereinfachen?
Ich hab ein Projekt, wo viele Strings verwendet worden sind und lokaliseren ist jetzt erstmal total unspassig weil ich durch ne Menge von Code durch muss um Strings zu finden.

15.11.2010 - 09:33 Uhr

Hallo,

was ich eigentlich Suche ist eine Art Visitor Konzept, das wie folgt funktioniert: Es gibt ein Event auf das sich mehrere Handler registrieren können. Wenn das Event gefeuert wird, soll jeder Handler der Reihe nach aufgerufen werden.
Dabei soll jedoch jeder Handler entscheiden dürfen, ob die weitere Ausführung der Verarbeitung abgebrochen werden soll oder nicht.

Einfaches Beispiel:



public delegate bool Val(Data d);
public event Val ValidateData;

if(ValidateData(data))
{
   // Arbeite mit den Daten
}


ValidateData soll ein event sein, auf das sich eine beliebige Menge an Handlern aufschalten können. Wenn einer der Handler aber false returned, dann soll die komplette Verarbeitung der Kette oder alternative nur das Endergebnis von ValidateData false liefern.

Das erste Ansatz benötigt mehr logik, es muss quasi immer geprüft werden, ob der nächste Handler aufgerufen werden soll, oder nicht.

Der zweite Ansatz sollte (dachte ich) mit einem Event, der ein bool returned erschlagen werden können.
Allerdings verstehe ich den nutzen von solchen returns nicht.
Ich gehe doch richtig in der Annahme, das wenn 2 Handler auf einem Event mit einem Bool lauschen und der Reihe nach abgearbeitet werden, so ist das Ergebnis des Events immer das return des letzten Handlers, oder?

Sprich wenn der erste Handler false, aber der zweite true returned, so ist das Event mit einem true beendet worden.

Kann man hier die Ergebnisse auf irgendeine Art und Weise aggreggieren? also definieren, dass der bool, der returned wird über && aggregiert wird, oder so?

04.11.2010 - 08:00 Uhr

Also die TestDLL wird ins gleiche Bin verzeichnis generiert, wie alle anderen und dann temporär kopiert.

Ich habe im MSDN Forum jedoch bereits eine hilfreiche Antwort bekommen:

Eine "name".testrunconfig Datei anlegen, oder die vorhandenen LocalSettings.testrunconfig editieren.
Dort enable deployment auswählen und die DLLs eintragen, die zusätzlich kopiert werden sollen.
Dann läufts ohne manuellem kopieren.

03.11.2010 - 12:45 Uhr

Hallo,
entschuldigt die späte Antwort.

Also das Hinzufügen zum Projekt und Kopieren wenn neuer funktioniert nicht. Die DLLs werden nicht kopiert.

DeploymentItem ist zu umständlich, wenn ich 100 Methoden habe, muss ich 100 mal dutzende von DeploymentItems haben, weils laut hier How to: Configure Test Deployment nur auf Methoden angewendet werden kann.

Die Idee mit einer zusätzlichen DLL ist nicht gerade handlich und erfordert Workarounds fürs drumherum, eventuell werde ich es aber testen, wenn keine bessere Alternative existiert.

18.10.2010 - 18:14 Uhr

Die Einfachheit von Managed Code 😃

Wie habe ich das vermisst.

Danke 😃

18.10.2010 - 17:22 Uhr

Ich habe eine Methode, die n byte[,] Arrays generiert. In .net sind Arrays Reference Types, soweit ok, aber was passiert mit einem Array, was in einer Methode erzeugt wird und dann in eine Liste gelegt wird:



public void doSomething(Queue<byte[,]> m)
{
   var f = new byte[,] {....}
   m.Enqueue(f);
}

public void START()
{
   var q = new Queue<byte[,]>();
   // hier wird q befüllt

   // hier die methode
   doSomething(m);

  // was ist mit dem byte Arrays aus doSomething?
}


Es werden in doSomething in der Regel mehr, als nur ein Arrays erzeugt, also kann ich es nicht einfach mit return zurückgeben.

Ich kann nicht ganz nachvollziehen was passiert?
Sind Referenztypen in C# gezählt? So ne Art Smart Pointer? Oder hab ich, nachdem doSomething durchgelaufen ist im Queue einen Verweis auf einen freigegeben Speicher?

Auch wenn doSomething ein byte[,] returnen würde, ist es ja im Endeffekt eine lokale Variable, die aus dem Scope der Methode geht und eigentlich entweder zerstört werden müsste, oder ein Leck verursacht?

Es wird hier doch nirgendswo eine implizite Copy Operation ausgeführt, oder? Würde ja bedeuten, dass das Framework hier implizit ein Buffer.BlockCopy mit der korrekten Größe macht?

05.10.2010 - 13:21 Uhr

Gelöst:
Zusätzlich muss bei Advanced noch Debug Info auf full (oder pdb) gesetzt werden.

05.10.2010 - 13:11 Uhr

Ein propreitäres Framework prüft beim Start alle gelandenen DLLs und zählt, welche im Release und welche als Debug gebaut worden sind und wirft dann eine Meldung, dass Debug und Release gemischt worden sind.

Dies wird mittels

System.Diagnostics.DebuggableAttribute

Der Assembly Custom Attributes erreicht. Wenn diese numm sind, dann zählt es als Release, andersrum als Debug.

Zusätzlich meldet Visual Studio beim Start
"The following module was build either with optimizations enabled or without debug information (...)"

Ich bin nicht in der Lage, eine Debug Version zu erstellen. Woran kann es liegen? Die Konfiguration ist selbstgebaut, aber ich habe in den Properties des Projekts nicht viele Optionen.

"Define DEBUG constant" ist an
"Define TRACE constant" ist an
"Optimize code" ist aus

Was übersehe ich noch?

01.10.2010 - 10:03 Uhr

Lexware fällt auf die Nase. $(Configuration) in die proj Datei reinzuschreiben hilft nichts, wenn $(Configuration) nicht der Name des Ordners ist, in dem die Assembly liegt 😕

Wenn ich ein Compilation Symbol definiere, ala CONFIG=MeineConfig, so kann ich diese dann nicht mittels $(CONFIG) in der proj Datei einsetzen. Hmpf!

29.09.2010 - 15:07 Uhr

Lexware scheint mein Retter zu sein 😃

Danke!

29.09.2010 - 07:43 Uhr

Debug und Release waren nur Beispiele.
Es gibt DX 9 Debug und Release und DX 11 Debug und Release.
Ich habe nur der Einfacheit halber nur von Debug und Release geredet.
Es ist Third Party Code, der XP und neuere Betriebssysteme unterstützt und da DX 11 auf XP nicht läuft, ist DX 9 Fallback.
Aber das sollte ja auch keine Grundsatzdiskussion werden, warum wir es so machen. Wir haben an der Stelle keine Wahl, weil es eine Middleware ist, die wir selber bauen.

29.09.2010 - 07:14 Uhr

Es geht um Assemblies.
Ein Beispiel ist eine Konfiguration von Anwendungen, die Direct X unterstützen. Es passieren unter DirectX 9 andere Dinge, als unter DirectX 11, daher benötige ich für die beiden Configs auch zwei unterschiedliche Referenzen.
Man kann ja eine Referenz nicht unter einer bestimmten Config hinzufügen, sondern immer nur für das Projekt im Allgemeinen

28.09.2010 - 20:02 Uhr

Wenn ich mit Library X baue, aber Library Y ins Bin kopiere, geht das nicht total in die Hose?

Es geht hier auch nicht unbedingt um Debug und Release, sondern andere Konfigurationen, die andere Ausgangssituation vorraussetzen, was halt nicht geht, wenn ich nur eine Lib anziehen kann

28.09.2010 - 17:57 Uhr

Dessen bin ich mir voll bewusst und die Assemblies sind mit voller Absicht unterschiedlich.
Ich mein, in C++ kann ich für verschiedene Builds verschiedene Libs anziehen, warum wurde das da nicht eingeführt?

28.09.2010 - 16:06 Uhr

Hallo,

ich habe hier eine Assembly, die im Release anders ist, als im Debug. Es existiert kein Projekt von der Assembly, ich habe nur die DLLs.
Wenn ich nun ein CSharp Projekt aufsetze, so kann ich ja mit Add Reference ne Lib auswählen. Das Problem ist, ich kann für Debug und Release nur eine auswählen.
Gibt es da einen Weg, die Assembly als Referenz buildabhängig zu haben?

Ich weiß, dass es geht, wenn man bei Add Reference ein Projekt in der gleichen SLN nimmt, dann wird im Debug Debug und im Release Release genommen, aber ich habe ja, wie gesagt, nur die dll.

Danke

Vs 2008

25.09.2010 - 15:55 Uhr

Erledigt.
msbuild kann direkt Projektmappen bauen.
Ich ging irgendwie davon aus, dass es über ne XML Datei eine .cproj Mappe generiert und nicht baut

25.09.2010 - 15:15 Uhr

Wir bekommen von einem Drittanbieter eine Middleware, die leider nur aus Solutions und Projektmappen besteht.
Mein Ziel ist es, eine Build-Umgebung zu haben, um so etwas automatisiert zu bauen.
Ich hab da an msbuild gedacht, weil das im Gegensatz zu anderen Build Scripten einerseits C# Projekte generieren kann und andererseits habe ich die Hoffnung, dass msbuild ein Tool zum Bauen von cproj Bietet.
Ich bin seit einigen Tagen am Einlesen in msbuild und mir ist klar, wie ich ein Build Script baue, was mir letztendlich dann eine Solution und eine cproj Datei generiert. Aber gibt es einen Weg ein vorhandenes cproj automatisiert zu bauen?
Ich meine das so ähnlich, wie über nmake, nur dass ich halt keine Makefile sondern eine cproj und sln Datei habe

(VS 2008, btw)

02.09.2010 - 18:05 Uhr

@TheGear, ich konnte es noch nicht testen, daher habe ich dazu noch nichts gesagt.

@haarrrgh: Die DLLs sind alle 3rdparty. Sprich kein Source vorhanden

02.09.2010 - 15:07 Uhr

Versuchs mal im PostBuild event mit zukopieren.

Ja, aber wohin denn? Das ist doch der Titel meines Threads. Der Name wird aus meinem benutzernamen und Gruppennamen meines Rechners plus einem zeitstempel dynamisch generiert. Daher temporärer Name. Das ist ein C# Test Projekt, kein C# Projekt. Es werden dort spezielle Verzeichnisse angelegt und wieder gelöscht und für die finde ich kein Makro

02.09.2010 - 12:17 Uhr

Ne, sagte ja, kann diese nicht als Referenz hinzufügen, oder meinst du was anderes mit "hinzufügen" ?

02.09.2010 - 08:29 Uhr

Ich habe einen Unit Test in C# gebaut, der mehrere DLLs benötigt. Die kopiert die IDE beim Start auch immer korrekt in ein "TestResults\TEMPORÄRER_NAME" Verzeichnis.
Mein Problem ist, das kopieren reicht nicht. Der temporäre Name, also das Verzeichnis wird nach der Ausführung des Tests ja gelöscht und durch eine trx Datei ersetzt.

Der Haken an der Sache, bei dem erstellen dieses temporären Verzeichnissen kopiert die IDE zwar DLLs, aber das Ergbnis ist kein funktionsfähige Testanwendung. Da eine der kopierten DLLs dynamisch zur Laufzeit eine DLL nachläd, welche aber nicht in das temporäre Verzeichnis kopiert worden ist.
Ich kann die betroffene DLL nicht als Referenz in das Projekt einfügen, weil es keine gültige Net oder Com DLL ist.
Wie soll man mit so etwas umgehen? Wie stelle ich sicher, dass diese DLL gefunden werden kann?

Edit: Ich habe schon versucht den Pfad, wo die DLLs liegen, die nicht mitkopiert werden als Referenz Pfad anzugeben, aber das funktioniert nicht.
Ich kannes auch nicht in den globalen Environment Path aufnehmen, weil so das Projekt auf anderen Rechnern nicht mehr geht

25.08.2010 - 13:52 Uhr

Ich habe folgende XSD:

<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <xsd:complexType name="A">
      <xsd:sequence>
         <xsd:element name="GroupedWith" type="Position"  nillable="true" />
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="Position">
      <xsd:sequence>
      </xsd:sequence>
   </xsd:complexType>

</xsd:schema>


Im Endeffekt ist ein Knoten "Position" ein Element von A.
Nun generiere ich mir die C#Klasse daraus und habe bei dem GroupedWith aber das Problem, dass ich niemals ein null bekommen kann.


[XmlElement(Type=typeof(Position),ElementName="GroupedWith",IsNullable=false)]
		[EditorBrowsable(EditorBrowsableState.Advanced)]
		public Position __GroupedWith;
		
		[XmlIgnore]
		public Position GroupedWith
		{
			get
			{
				if (__GroupedWith == null) __GroupedWith = new Position();		
				return __GroupedWith;
			}
			set {__GroupedWith = value;}
		}

XSDObjectGen generiert mir bei dem getter automatisch ein new, wenn null.
Das ist aber absolut nicht das, was ich will. Ich erwarte dort null. Sprich wenn keine gruppierung vorhanden ist, soll ich auf keien Fall ein Objekt erzeugt bekommen.
Nun bekomme ich aber XSDObjectGen nicht dazu, einfach __GroupedWith zu returnen, ohne da die == null abfrage zu machen.

Ich habe bereits imXML Versucht dem GroupedWith ein "nillable=true" zu vergeben, ohne erfolg

24.08.2010 - 16:41 Uhr

Ich habe ein XSD Datei definiert und mittels des Tools xsd.exe auch die passenden serialisierbaren XML Dateien bekommen.
Nun bin ich aber Level 2 😄 und benötige korrektes Handling von zirkulären Referenzen und Referenzen an sich (also keine Klone, wenn zwei mal das gleiche Objekt referenziert wird)
Nun hilft mir ja WCF da enorm, weiter: Serialization and Deserialization
Das händelt referenzen und co, aber was ist nun mit meiner XSD Datei? Ich generiere den C# Code ja nicht vonhand und würde das auch ungern tun müssen.

Gibt es da etwas, was XSD in WCF konforme C# Klassen umwandeln kann?

23.08.2010 - 13:17 Uhr

Funktioniert denn das auch mit Events? Stack Traces helfen mir nur bedingt, da ich ja garnicht weiß, wohin er im Code überhaupt springt

23.08.2010 - 13:01 Uhr

Ich arbeite mit Source einer Anwendung die komplett auf Events aufbaut. Es gibt defakto sehr wenige lineare Methoden aufrufe sondern viel mehr gefeuerte Events.

Mein Problem ist, wenn ich versuche zu verstehen, wie das Programm funktioniert, muss ich den Events hinterher.

Hat C# eine Möglichkeit, alle gefeuerten Events zu verfolgen primär wäre es beim Debuggen hilfreich, aber eine log ausgabe tut es auch. Sobald eigene Events gefeuert werden, komm ich ja in die Methoden rein, aber wenn die .net Events gefeuert werden, hilft mir ein Step Into nicht und ich verpasse die folgenden aufrufe

20.08.2010 - 12:43 Uhr

Ich habe aus einer XSD eine cs Klasse generiert, die eine Liste vom Typ T[] beinhaltet. Sprich ein Array.
Wenn ich die Liste fülle so muss ich diese ja mittels new T[meine Größe] initialisieren.
Da feste Größen aber lame sind, würde man ja dafür ein List<T> nehmen, das befüllen und dann ein ToArray() aufrufen.

Meine Frage aber, gibt es einen Weg, so etwas zu machen:


Obj.meinArrayOfT = new List<T>().Add(einT).ToArray();

Mir ist klar, dass ich hier den Umweg über ToArray sparen kann. Worauf ich aber hinaus will, ist die Frage, ob irgendwo über einen Wrapper oder so das Konzept von Fluent Interfaces bereits realisiert wurde. Sprich alles was normalerweise void zurück gibt, return anstelle von void immer this.

Nettes beispiel:


var liste = new List<T>().Add(t1).Add(new T(..)).Add(t2);

Das wäre wirklich ab und zu recht hilfreich

20.08.2010 - 11:39 Uhr

Alles geschlossen und neu gebaut. gleiches Problem.
von 3rdparty wird nicht geerbt, nur benutzt

20.08.2010 - 07:42 Uhr

Wir haben ein Projekt bei dem die Form1 eine Reihe von 3rd party assemblies anzieht.
Diese werden korrekt referenziert und geladen. Anwendung läuft super.

Nun erstelle ich eine Form2 die von Form1 erbt. Sie befindet sich im gleichen Projekt.
Nun passiert folgendes:

Der Designer von Form2 funktioniert nicht mehr. Ich bekomme einen Error:

Could not load file or assembly '3rdPartyassembly, Version=..., Culture=neutral, PublicKeyToken=null' or one of its dependencies. Das System kann die angegebene Datei nicht finden.

Der Callstack verweist auf den Form1 Constructor

Die gleiche Meldung steht in der Error list als Warning wobei File leer ist, Line und Column auf 0 verweisen.

Die Assembly ist jedoch definitiv vorhanden, weil Form1 sie ja vorher benutzt hat.
Ich habe mal using 3rdPartyAssembly in Form2 eingetragen, wird auch erkannt.
Die Warnung bekomme ich dennoch.

Die Anwendung läuft aber dennoch. Sprich wenn die Main anstatt Form1 Form2 startet, ist alles in Ordnung.
Allerdings würde ich schon gerne den Designer haben.
Hat jemand eine Idee, womit das zusammen hängt? Mit der 3rdParty Assembly eher nicht, wie ich meine.

IDE ist VS 2008

Edit: dieser Fehler taucht auch auf, wenn ich in Form2 den base constructor garnicht aufrufe...

18.08.2010 - 11:25 Uhr

Jepp, keine Frage.
Das wird durchaus auch passieren.
Aber aktuell ist es noch nicht passiert und der Host kann im Moment nicht geändert werden.

Das soll auch kein Produktivcode werden, sondern eher ein Proof of Concept des Plugins.
Die Leute, die sich das angucken, verstehen nichts von Callbacks oder ähnlichem, sondern brauchen quasi ne visuelle Demo

18.08.2010 - 10:18 Uhr

Was eventuell interessant wäre: Ist es möglich per Reflection eine Methode aus einer anderen Assembly zu überladen oder sich da reinzuhängen?

Die Hauptanwendung hat update routinen, die keine Events oder etwas in der Art feuern, wenn sie beendet worden sind. Ich muss aber nach dem Update zusätzliche Operationen ausführen, die immer nach dem Update ausgeführt werden müssen.

Problem ist: Mein Plugin kriegt nicht mit, wann das Update durchgeführt worden ist

17.08.2010 - 11:42 Uhr

Nö. Auf A habe ich kein Zugriff, aber A wirft andere Events, an die ich mich probehalber anhängen kann, dann ist der Ctor der Form schon durch und ist verfügbar

17.08.2010 - 11:41 Uhr

Ne, ist auch nicht strong named.

Wie gesagt, wenn ich diesen AssemblyKey Block aus der App rausnehme, dann meckert er ja nicht mehr

17.08.2010 - 11:15 Uhr

Das mit dem Public Key ist aber nur nötig, wenn strong-named Assemblies im Spiel sind, oder? Und ich sehe nicht, wo das der Fall sein soll.

Die Anwendung hat kein /key und signiert sicht meiner Meinung nach ja auch nicht, das hab ich durch sn.exe gecheckt.
Das heißt es sollte garkein Public Key geben