Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
eigene DLL einbinden
Xeres
myCSharp.de - Member



Dabei seit:
Beiträge: 16

Themenstarter:

eigene DLL einbinden

beantworten | zitieren | melden

Hi Leute,

programmiere seid gestern c# :-)

So und nen erstes Problem hab ich bereits... Wenn ich versuche eine DLL einzubinden (z.B. user32.dll) klappt das wunderbar...

Meine eigene DLL klappt zwar auch von einbinden nur kann ich dann keine meiner Funktionen aufrufen... ich bekomme immer den Fehler:

Der Einstiegspunkt "LadeDaten" wurde in der DLL Test.dll nicht gefunden.

Folgenden Code hab ich:

In dem Programm das die DLL aufruft:

// project created on 08.12.2003 at 19:04
using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;

namespace MyFormProject 
{		
	class MainForm : System.Windows.Forms.Form
	{
		private System.Windows.Forms.Button button;
		public MainForm()
		{
			InitializeComponent();
		}
	
		// THIS METHOD IS MAINTAINED BY THE FORM DESIGNER
		// DO NOT EDIT IT MANUALLY! YOUR CHANGES ARE LIKELY TO BE LOST
		void InitializeComponent() {
			this.button = new System.Windows.Forms.Button();
			this.SuspendLayout();
			// 
			// button
			// 
			this.button.Location = new System.Drawing.Point(104, 128);
			this.button.Name = "button";
			this.button.TabIndex = 0;
			this.button.Text = "button";
			this.button.Click += new System.EventHandler(this.ButtonClick);
			// 
			// MainForm
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
			this.ClientSize = new System.Drawing.Size(292, 273);
			this.Controls.Add(this.button);
			this.Name = "MainForm";
			this.Text = "This is my form";
			this.ResumeLayout(false);
		}
			
		[STAThread]
		public static void Main(string[] args)
		{
			Application.Run(new MainForm());			
		}
// hier
		[DllImport("Test.dll")]
		public static extern int LadeDaten(int I);	

		void ButtonClick(object sender, System.EventArgs e)
		{	
			LadeDaten(10);
		}	
	}			
}

In der Datei der DLL:


using System;

public class Test
{
	public static int LadeDaten(int I)
	{
		return(10);
	}
}

Kann mir da einer weiterhelfen?

Danke
private Nachricht | Beiträge des Benutzers
guenni81
myCSharp.de - Member



Dabei seit:
Beiträge: 206

beantworten | zitieren | melden

Ist deine Selbstgeschriebene DLL Datei in C# erstellt worden??? Falls ja kannst du eine Referenz darauf machen und viel leichter verwenden...
private Nachricht | Beiträge des Benutzers
Xeres
myCSharp.de - Member



Dabei seit:
Beiträge: 16

Themenstarter:

beantworten | zitieren | melden

Wie funktioniert das? Glaub mir der direkten Kompilierung über die csc.exe würde ich das hinbekommen, geht das aber auch mit SharpDevelop?
private Nachricht | Beiträge des Benutzers
guenni81
myCSharp.de - Member



Dabei seit:
Beiträge: 206

beantworten | zitieren | melden

Da müsste es irgendwas geben mit Verweis hinzufügen. Über dies musst du dann einfach deine DLL Datei einbinden.
private Nachricht | Beiträge des Benutzers