Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem pozivanja C unmanaged funkcije iz C#

[es] :: .NET :: .NET Desktop razvoj :: Problem pozivanja C unmanaged funkcije iz C#

[ Pregleda: 588 | Odgovora: 4 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

chiro
Root Chiro

Član broj: 17324
Poruke: 17
*.ttk.pte.hu.



Profil

icon Problem pozivanja C unmanaged funkcije iz C#29.06.2006. u 13:31
Pozdrav svima. Problem je sledeci:
Imam file.h datoteku u kojoj je izmedju ostalog i sledeca funkcija:
Code:

int DllExport DataqVReadAIMultiChannelCSharp(int iCardNo, int (*iChannelNumberArray)[4], int iNumberofChannels, int iAIMode, float (*fVoltageArray)[4]);

Prvi array je input a drugi bi trebao vratiti neke vrijednosti.

Nigdje na netu ne mogu da nadjem neki normalno napisani dokument kaji objasnjava kako bih trebao da postavim parametre u C# deklaraciji.
Probao sam na sledeci nacin da definisem funkciju u C#-u:
Code:

        [DllImport("DataqCF2.dll", SetLastError = true)]
        public static extern unsafe int DataqVReadAIMultiChannelCSharp(int iCardNo, int[] iChannelNumberArray, int iNumberofChannels, int iAIMode, float[] fVoltageArray);


Pozivao sam je na sledeci nacin:
Code:

float[] values = new float[4];
int[] channels = new int[4];
channels[0] = 0;
            channels[1] = 1;
            channels[2] = 2;
            channels[3] = 3;
DataqCF2.DataqVReadAIMultiChannelCSharp(Program.cardCount - 1, channels, 4, 0, values);

nakon izvrsenja vrijednosti values-a su 0-e. Ako dodam 'out' ispred values onda program napravi exception.

Pomoglo bi mi konkretno rjesenje, a jos vise neki dobar dokument u kojem je napisano sve o tome sa primjerima.

Unaprijed hvala!
Pozdrav!
29.06.2006. u 13:31 

NrmMyth
Split, Kaštela

Član broj: 63456
Poruke: 839
*.net.t-com.hr.



Profil

icon Re: Problem pozivanja C unmanaged funkcije iz C#29.06.2006. u 13:50
Managed C++ (C++/CLI)
Kako se sad bas upoznajem sa gore navedenim, ako ti nije problem da mi das funkciju pa cu ti je napraviti managed asembly koji ces lako moc iskoristiti.
Ti pomognes meni - ja tebi...
29.06.2006. u 13:50 

chiro
Root Chiro

Član broj: 17324
Poruke: 17
*.ttk.pte.hu.



Profil

icon Re: Problem pozivanja C unmanaged funkcije iz C#29.06.2006. u 13:56
Nemam izvorni kod funkcije. Samo dll datoteku.
Pozdrav!
29.06.2006. u 13:56 

chiro
Root Chiro

Član broj: 17324
Poruke: 17
*.ttk.pte.hu.



Profil

icon Re: Problem pozivanja C unmanaged funkcije iz C#30.06.2006. u 10:53
Da budem malo precizniji. Kako da predam parametar tipa array tako da unmanaged funkcija upise u njega vrijednosti i da pri povratku mogu procitati te vrijednosti?

Hvala
Pozdrav!
30.06.2006. u 10:53 

Oliver Klaćik
Vice President, Thunder Road Software Inc.
Stara Pazova

Član broj: 34059
Poruke: 242
80.93.231.*

Sajt: www.thunderroadsoftware.c..


Profil

icon Re: Problem pozivanja C unmanaged funkcije iz C#02.07.2006. u 08:54
Nemam baš puno iskustva sa unmanaged kodom, ali zar ne bi bilo dovoljno da taj parametar proslediš kao reference (ref) input parametar?
Oliver 'FAQ' Klaćik
02.07.2006. u 08:54 

[es] :: .NET :: .NET Desktop razvoj :: Problem pozivanja C unmanaged funkcije iz C#

[ Pregleda: 588 | Odgovora: 4 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.