C# eigene dll erstellen

Flens

Erfahrenes Mitglied
Moin,

hab mal angefangen eine eigene dll mit Visual Studio (C#) zu schreiben.

Jetzt habe ich das Problem, wenn ich die Funktion aus der dll nutzen will, kommt folgender Fehler:

Code:
Eine nicht behandelte Ausnahme des Typs 'System.EntryPointNotFoundException' ist in WindowsApplication1.exe aufgetreten.

Zustzliche Informationen: Der Einstiegspunkt 'build_sql_string' wurde nicht in der DLL ClassLibrary1.dll gefunden.

Muss man bei der Programmierung der dll die Funktion noch irgendwie "öffentlich" machen bzw. für den Zugriff freigeben?

Bin Euch um jede Hilfe dankbar, hab im Netz zur dll Programmierung mit C# kaum etwas gefunden. Bin also um jede Hilfe oder Link zu einem Tutorial sehr dankbar :p
 
das habe ich gemacht. Jedenfalls sieht es in der dll folgerndermaßen aus:

Code:
public string build_sql_string(string values)
 
Hi.

Komisch, Ich mach das immer so:

1.) DLL proggen, das was ich inder Application brauch auf Public setzen.
2.) Die DLL bei besagter Application als Referenz hinzufügen.
3.) Die Referenz bei den Usings eintragen.
4.) Methoden, ec. verwenden.

Natürlich bei VisualStudio.

Kannst aber auch erst Mal nur die DLL bei den Referenzen hinzufürgen, dann startest den Object-Browser, gehst auf die Refrenz und schaust was Sie für Klassen/Methoden/Objekte etc. bereitstellt.

Wenn das was du suchst da nicht drinsteht liegts womöglich an der DLL. :(


MfG Alexander12
 
Die dll sieht folgendermaßen aus:

Code:
using System;

namespace ClassLibrary1
{
	public class Class1
	{
		public Class1()
		{
		
		}
	}

	public class db_handle //Klasse zur Verarbeitung der Datenbankabfragen
	{
		public db_handle() //Konstruktor
		{

		}
       
		string connection_string;
		string sql_string = "";
		string table_name;

		public string build_sql_string(string values) //erstellt den Insert String
		{
			string[] parameters = new string[50];
			char separator = ',';
						
			parameters =  values.Split(separator);
			sql_string = "INSERT INTO " + table_name;

			for (int i = 0; i < parameters.Length - 1; i++)
			{
				sql_string =  sql_string + parameters[i] + ", ";
			}

			sql_string = sql_string + parameters[parameters.Length - 1];

			return sql_string;
		}
	}
}
 
Re: C# eigene dll erstellen für DB Insert

Bin nun schon einen ganzen Schritt weiter gekommen :)

Jedenfalls das jetzt mit der dll.

Hab was zur dll Erstellung mit C# gefunden. Fals es jemanden interessiert, hier ist der Link:
http://www.c-sharpcorner.com/2/pr12.asp

Hab da aber jetzt ein weiters Problem mit der DB Verbindung in der dll.
Bastel mir ein Insert String zusammen. Sieht so aus:

INSERT INTO MESDB_LOG VALUES (54, 52, 62, 41, 72)

Das Ding auch, wenn ich es so auf die DB "anwende".
Aber sobald ich das aus der DLL aufrufe, geht nix mehr.

Erstmal übergebe ich den String an
Code:
sqlCommand1.CommandText
Code:
sqlCommand1.CommandText
Code:
sqlCommand1.CommandText


dann versuche ich den auszuführen:
Code:
sqlConnection1.Open();
sqlCommand1.ExecuteNonQuery();
Code:
sqlConnection1.Open();
sqlCommand1.ExecuteNonQuery();
Code:
sqlConnection1.Open();
sqlCommand1.ExecuteNonQuery();


nur das ExecuteNonQuery() geht irgendwie nicht in der dll.

Muss man da noch was besonderes beachten? Aus einer normalen Windows Anwendung heraus der Code.
 
Wie wärs, wenn du dazu einen neuen Thread aufgemacht hättest ?

Du musst deinem Commandobjekt auch das geöffnete Commandobjekt mitgeben.
 

Neue Beiträge

Zurück