Avatar billede _et Praktikant
20. januar 2006 - 01:35 Der er 14 kommentarer og
1 løsning

bruge .dll fil fra c#

Jeg ønsker at bruge nogle funktioner fra en dll fil.

Det er nærmerer bestemt denne IO driver fra driverLINX
http://www.driverlinx.com/DownLoad/DlPortIODL.htm

Jeg skal bare vide hvordan jeg kalder funktioner, som findes i dll'en fra C#.
Avatar billede flyver23 Nybegynder
20. januar 2006 - 06:25 #1
Du kan højre klikke på mappen references i solution explorer. Vælg add reference. Herefter tilføjer du stien til din dll via browse menuen.
Vh flyver23
Avatar billede flyver23 Nybegynder
20. januar 2006 - 06:27 #2
Når filen er tilføjet i reference skal du øverst i din kode skrive using "din dll"
Avatar billede alex_sleiborg Nybegynder
20. januar 2006 - 08:01 #3
Og hvis du bare kompiler fra konsolen gør du bare således. csc /reference:din.dll source.cs
Avatar billede spif2001 Nybegynder
20. januar 2006 - 09:15 #4
kommer jo lige an på om den dll er lavet i C#...

Hvis det er COM teknologi så kig engang her:

http://www.codeproject.com/dotnet/cominterop.asp
Avatar billede innercitydk Nybegynder
20. januar 2006 - 09:54 #5
Hvad skal du bruge den til? IO har .net jo et library der klarer i forvejen. Hvis det er hardware specifik adgang du skal bruge vil jeg foreslå du bruger directx sdk

Vh
Avatar billede _et Praktikant
20. januar 2006 - 15:25 #6
Jeg skal skrive til Printerportens databit.
Hvis i kan vise mig hvordan jeg bruger .net's indbyggede funktioner, ville det være fedt.

Jeg ved ikke hvilken teknologi dll'en er skrevet under, men jeg kan ikke adde .dll filen under referancer. "not valid assambler or COM objekt"
Avatar billede spif2001 Nybegynder
20. januar 2006 - 15:27 #7
den er sikkert skrevet i C++ - ikke at det hjælper dig så meget...
Avatar billede _et Praktikant
20. januar 2006 - 15:31 #8
Der er to eksempler på brugen med, det ene er c++ og det andet er vb.

Problemet er at jeg ikke har skrevet i vb i mange år, så jeg kan ikke huske vb,
og jeg er ikke så skrap i c++, så jeg kan gennemskue hvordan de kalder funktionerne.
Avatar billede spif2001 Nybegynder
20. januar 2006 - 15:32 #9
men hvis du skal skrive til en printerport kan man i .NET 2.0 bruge System.IO.Ports.SerialPort til at skrive til en port.

a la:

using System.IO.Ports;

SerialPort serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);

Den findes desværre ikke i .NET 1.1
Avatar billede innercitydk Nybegynder
20. januar 2006 - 15:33 #10
Hvis det kan hjælpe jer er der her en converter fra C#->VB og VB->C#

http://www.developerfusion.co.uk/utilities/convertvbtocsharp.aspx

Vh
Avatar billede _et Praktikant
20. januar 2006 - 20:04 #11
Det er lykkedes mig, at finde en anden io driver med c# kode, så dem der vil have point, bedes svare.

Takker for hjælpen.
Avatar billede alex_sleiborg Nybegynder
20. januar 2006 - 21:38 #12
Kan du godt skrive direkte til LPT1 fra .NET? Har læst et sted, at micrsoft på grund af sikkerheds grunde har lukket for den funktion
Avatar billede _et Praktikant
20. januar 2006 - 21:39 #13
Det har de også i alle versioner af NT kernen, men med en lille driver som fx. ovenstående kan man godt.
Avatar billede alex_sleiborg Nybegynder
20. januar 2006 - 21:39 #14
Eller er det mig der har hørt forkert?
Avatar billede flyver23 Nybegynder
21. januar 2006 - 10:33 #15
Ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester