Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 03:08

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Codedom ReferencedAssemblies

Discussion on Codedom ReferencedAssemblies within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1

 
boxxiebabee's Avatar
 
elite*gold: 0
Join Date: May 2008
Posts: 1,222
Received Thanks: 500
Codedom ReferencedAssemblies

Servus, ich erstell mit Codedom ne neue .exe mit nem WPF Fenster.
Das "Problem" ist nun, das ich ein paar Assemblies einbinden muss.

Das ist nen kleiner Code Ausschnitt:

Code:
var p = new CompilerParameters
{
	GenerateExecutable = true,
	TreatWarningsAsErrors = false,
	CompilerOptions = "/t:winexe",
	IncludeDebugInformation = false,
	OutputAssembly = dlg.FileName,
};
									
string[] assemblies = 
{
    "System", "System.Core", "System.Data", "mscorlib",
    "System.Drawing", "System.Windows.Forms", "Microsoft.CSharp",
    @"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\WindowsBase",
    @"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\PresentationCore",
    @"C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\PresentationFrameWork"
};
									  
foreach (string a in assemblies)
{
    p.ReferencedAssemblies.Add(a + ".dll");
}
Wie Ihr seht, sind 3 .dll's über nen absoluten Pfad eingebunden, da ansonsten der Compiler Errors umsich wirft, da diese nicht gefunden werden.
Nun (denke) ich mal das dass so nicht auf allen PC's laufen wird.

Was könnte ich da tun?

(Warscheinlich könnte ich die 3 .dll's einfach in den Projekt Ordner einfügen, nen relativen Pfad benutzen und diese mit dem Programm mitliefern (kann's grad nicht testen ob's so funktioniert), aber gibs da ne andere, schönere Lösung?)

lg
boxxiebabee is offline  
Old 07/23/2012, 00:38   #2
 
kissein's Avatar
 
elite*gold: 0
Join Date: Sep 2005
Posts: 426
Received Thanks: 87
Ich würde über die Registry den Schlüssel suchen und somit den Installationspfad zusammenstückeln, wobei 32-&64bit systemen unterschieden werden muss oder eventuell
zur Laufzeit überprüfen ?

Code:
System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory()
kissein is offline  
Old 07/23/2012, 01:36   #3

 
boxxiebabee's Avatar
 
elite*gold: 0
Join Date: May 2008
Posts: 1,222
Received Thanks: 500
Quote:
Originally Posted by kissein View Post
Ich würde über die Registry den Schlüssel suchen und somit den Installationspfad zusammenstückeln, wobei 32-&64bit systemen unterschieden werden muss oder eventuell
zur Laufzeit überprüfen ?

Code:
System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory()
Danke, aber das wäre ne zu unschöne Lösung :O

Habs nun endlich gelöst, musste den CodeDom Compiler Version auf 4.0 hochschrauben, da standartmäßig 2.0 verwendet wird, und die 3 Dateien hab ich dann so eingebunden:

Code:
p.ReferencedAssemblies.Add(typeof(PresentationSource).Assembly.Location);
p.ReferencedAssemblies.Add(typeof(Window).Assembly.Location);
p.ReferencedAssemblies.Add(typeof(DependencyObject).Assembly.Location);
boxxiebabee is offline  
Reply


Similar Threads Similar Threads
[CodeDom]In 32bit Compilen?
02/12/2012 - .NET Languages - 1 Replies
Cheers, Ich benutze folgende CodeDom Funktion: Imports System.CodeDom.Compiler Public Class Compiler Public Shared Sub GenExe(ByVal Output As String, ByVal Source As String, ByVal Icon As String) On Error Resume Next Dim Compiler As ICodeCompiler = (New VBCodeProvider).CreateCompiler() Dim Parameters As New CompilerParameters() Dim cResults As CompilerResults
Codedom Guide für C#?
11/23/2010 - .NET Languages - 1 Replies
Servus, ich würde mich gerne mit näher mit dynamischen Code in CSharp beschäftigen, und dafür ist wohl am besten Codedom geeignet. Nun zu meiner Frage, gibt es dafür (gute) deutsche Guide's? Englische gibt es genug, aber kann leider keine in der deutschen Sprache finden. Bevor ich mich an einen englischen ranwage wollte ich hier nachfragen ob jemand einen solchen Guid im Repertoire hat :D Wenn sowas nicht existiert, zumindest nicht wirklich brauchbares, würde mir



All times are GMT +2. The time now is 03:08.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.