Habe mich in letzter Zeit, dank UML Simulation wieder mehr mit CodeDom und runtime Compilieren beschäftigt. Bin dabei auf folgendes draufgekommen. (Hab vermutlich mal wieder die Hilfe nur halbe gelesen ).
ich erzeuge aus Enterprise Architect mein Codefile
ich erstelle CodeDomProvider und CompilerParameter
ich füge alle “External References” im CompilerParameter hinzu
ich Compiliere und hole mir den Type der Klasse die ich benutzen möchte
bis hier hin ist alles richtig, es geht ab hier zwar noch Fehlerfrei weiter aber…
ich erzeuge mit Hilfe von: Activator.CreateInstance eine Instanz
da ich weiß das die Instanz vom Interface X abgeleitet ist, spreche ich die Instanz als X an
Hier kommt der Fehler,..
wenn ich jetzt Funktionen anspreche die auf eine “External References” verweisen bekomme ich einen “could not load Assembly xxx,… file not found”
Wie schon in Schritt 5. beschrieben liegt hier der eigentliche Fehler, welcher dann in Schritt 7. erst auftaucht. Um die Instanz und auch alle “External References” zu bekommen, sollte man die Instanz nicht über Activator.CreateInstance erstellen, sondern über CompilerResult.CompiledAssembly.CreateInstance(Type.FullName) da hier noch die “Externen Referencen” richtig mitgeladen werden.
English:
Have done some things in CodeDom and runtime compiling recently, for UML Simulation. Found the following at the time. (presumably I only rushed through the help again ).
I create a Codefile out of Enterprise Architect
I create a CodeDomProvider and CompilerParameter
I add all “External References” to the CompilerParameter
I compile it and the get the type of the class I want to use
till here everything is OK, I’ll still get no errors but…
I create an instance using: Activator.CreateInstance
because I know the instance inherits the interface X I cast it to X
Here we go with the errors,..
If I now use a function which is using something from an “External Reference”, I get a “could not load Assembly xxx,… file not found” error.
Like I allready told, the real error is in step 5. but it shows up in step 7. To be able to use “External Referneces” don’t use the Activator.CreateInstanc to get an instance, rather use CompilerResult.CompiledAssembly.CreateInstance(Type.FullName) because this loads also the “External References”.
Ich war damals zufällig beim ersten Flug der alten Lösung dabei und habe es auch einige Mal am Weg in die USA nutzen können. Jetzt ist es endlich wieder soweit: Internet kommt wieder auf die Langstrecke: FlyNet: Lufthansa wieder mit Internet an Bord
Hoffentlich wirds günstiger – das letze mal war es ca 25$ für einen Flug über den Teich. – beim erst Flug war es gratis
Laut einer Studie der Deutschen Bank wird sich der Anteil der Business-User, die mit einem iPhone arbeiten weiter kontinuierlich erhöhen. Im Moment stehen in etwa 17 Millionen “reine” Consumer, knappen 2 Millionen “reinen” Business-User und ca. 6 Millionen Nutzern, die das iPhone privat und gelegentlich beruflich verwenden gegenüber.
Der Erfolg des “Apfeltelefons” ist nicht zu leugnen und es gibt offensichtlich auch Ansätze, um die Applikationsdistribution im Firmenumfeld zu ermöglichen. Für Enterprise-Lösungen war bis vor kurzem ja der App Store die einzige Möglichkeit – aber Apple bietet laut Homepage jetzt auch die Varianten: Enterprise und Ad Hoc Distribution. Neben dem iPhone OS Enterprise Deployment Guide, der die Systemadministration möglich machen soll, sind das ernsthafte Schritte, die das iPhone auch im Business-Bereich in eine Spitzenposition bringen soll. Insgesamt liegt der weltweite Marktanteil bei Mobiltelefonen bei etwa 3% – bei Smartphones soll er nächstes Jahr auf 16% steigen.
Ich finde den Text super den unsere Schwesterfirma Sparxsystems generiert hat:
GEBRAUCHSINFORMATION
Durch die MPG-Novelle werden zusätzliche Anforderungen an Ihr Projektmanagement und Ihre Hard- Softwareentwicklung gestellt. Ist Ihr Software Code bereits dokumentiert? Verwenden Sie ein Anforderungs- und Testmanagement?
Was nicht gleich dokumentiert wird, wird nie dokumentiert. Projektabdeckende Traceability – von der Erstellung der Anforderungen über die Implementierung bis zu den Testfällen – ist die grundlegende Voraussetzung für besichertes und nachvollziehbares Validieren und Verifizieren. Gemeinsam im Team durchgeführte Projektschritte werden zugleich automatisch zur Dokumentation: Analyse, Design, Implementierung, Testen und Roll-out. Machen Sie alle Projektphasen auch im Nachhinein noch validier- und verifizierbar.
Alle diese Anforderungen lassen sich durch unser UML Werkzeug Enterprise Architect von SparxSystems abdecken. UML, die bildhafte Sprache für Techniker und Nicht-Techniker.
UML 2.1 Notation
Alle 13 UML-Diagramme Security
Versioning, Locking
Zusammenarbeit im Team
Traceability
Hohe Integrationsfähigkeit in ihre bestehende
Toollandschaft durch Automation Interface
Automatische und flexible Dokumentation – Export (HTML, RTF)
Live Code Support für C++, Java, C#, VB, VB.Net, Delphi
UML Profiles
Benutzerdefinierte Patterns · Automatisiertes Erzeugen von HTML und RTF Dokumentation· XMI 2.1 Export/Import inkl. Sonderformate
Data Modelling und Database Engineering
Projekt-Aufwandsschätzung mit Hilfe von Use Case Metrics
Testing, issues, changes, glossary, resourcing
Replikationsfunktionalität (.EAP Files)
Grafikunterstützung über Stereotypes/Metafiles und importierte Bildformate
CSV Export/Import
Integration in Visual Studio und Eclipse
WYSIWYG Report Writer
Über 220.000 Kunden arbeiten bereits mit Enterprise Architect. Unsere Referenzen im Medizinbereich sind: Siemens AG – Healthcare Sector, Cardinal Health Germany, Viasys Healthcare GmbH, SHL Solutions for Healthcare and LifeSciences, Philips Medizinsysteme GmbH, Disetronic Medical Systems AG, MeVis Medical Solutions AG, u.v.a
WIRKSTOFF: UML
GEGENANZEIGEN: keine bekannt
PACKUNGSGRÖSSE: Named User, Concurrent User
VERWENDUNGSART: Entwickler, Projektmanager, Analyst täglich verwenden
LAGERUNG: Sofortige Installation und Anwendung empfohlen
Enterprise Architect kann gleichzeitig mit anderen Tools verwendet werden. Gebrauchsinformationen und fachliche Beratung unter sales@sparxsystems.at einholen.
Heute früh waren wir bei unserem Kunden Signa und haben gemeinsam mit Microsoft die auf MS Surface basierte Lösung Signa Surface in einem Gespräch mit Mag. Thomas Pichler von pressetext.at vorgestellt. Signa Surface ist seit ca. 4 Wochen im Livebetrieb und es sind bereits über 40GB an multimedialen Inhalten eingepflegt, die schon fast das gesamte Portfolio der zur Signa Holding gehörenden Tochterfirmen abdecken. Laut Franz Hillebrand, dem Manager Group-IT bei Signa , geht das Konzept voll auf. Die Besucher der Signa Holding im Palais Harrach in Wien, können am Signa Surface kaum vorbeigehen, ohne sich damit zu beschäftigen und das Feedback ist einfach nur: “Wow!” (http://pressetext.com/news/091104038/microsoft-surface-bringt-erhofften-wow-effekt/)
“Wow” – dachten wir uns auch bei den Bildern und Renderings der Villen am Gardasee, die bei Signa Development im Moment in die Verkaufsphase gehen …
… alleine schon der Ausblick ….
… wobei auch der Ausblick von unserem Büro nicht schlecht ist, oder ?