Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : utilisation de DLL développée en C [ Archives / Au secours ] (regdobey)

samedi 1 novembre 2003 à 19:58:31 | utilisation de DLL développée en C

regdobey


Bonjour,

j'ai du mal à utiliser une DLL (win32).

Le prototype de la fonction que j'appelle est :
int** allocation(int** r, int colonne, int ligne)

En fait, c'est du calcul matriciel, je passe une matrice (r) et ses dimensions. En retour, j'ai une autre matrice.


Dans mon code C#, je fias ceci :
[DllImport("MetHongroise.dll", EntryPoint="allocation", SetLastError=true, CharSet=CharSet.Unicode, ExactSpelling=true, CallingConvention=CallingConvention.StdCall)]
public static extern int[,] allocation(ref int[,] r, int n);

Mais là, probleme. j'arrive pas à faire marcher ça. Surtout sur le retour ...

Quelqu'un peut m'aider ??

Merci

samedi 1 novembre 2003 à 20:19:53 | Re : utilisation de DLL développée en C

regdobey


une petite précision : oui je me suis trompé en copiant mon c#. c'est bien :

[DllImport("MetHongroise.dll", EntryPoint="allocation", SetLastError=true, CharSet=CharSet.Unicode, ExactSpelling=true, CallingConvention=CallingConvention.StdCall)]
public static extern int** allocation(ref int[,] r, int colonne, int ligne)

De plus, j'arrive à faire fonctionner mon prog en unsafe, mais mon but est de le faire tourner en safe.

merci d'avance

dimanche 2 novembre 2003 à 20:02:08 | Re : utilisation de DLL développée en C

gg00xiv

int* p;
int **p;
int ********************p;

tout ces pointeurs se représentent en code managé par un seul et unique type : IntPtr (et oui toutes se variables sont des pointeurs).

ensuite, tu va devoir utiliser les fonction de la classe Marshal (System.Runtime.InteropServices) pour tout ce qui est transfert de données entre mémoire non managée et mémoire managée.

exple : Marshal.SizeOf, Marshal.PtrToStructure, etc ...

je te conseille donc de lire la doc du kit de developpement .NET framework installée avec ce dernier pour utiliser au mieux ces fonctions dans ton exemple.

PS: le type int[,] et en réalité le type Array qui na rien a voir avec un int** :)


[Membre du laboratoire .NET de SUPINFO]



Cette discussion est classé dans : int, dll, utilisation, allocation, développée


Répondre à ce message

Sujets en rapport avec ce message

API user32.dll [ par spectresombre ] Salut,J'ai un soucis je n'arrive pas à récupérer le texte dans une richtextbox d'un autre programme (AOL en l'occurence)je donne le passage de mon sou Prb avec DLL [ par pirate75000 ] C'est la premiere fois que je travail en C#Merci de votre aideJe dois appeller une fonction d'une Dll en c++ c'est ecrit de la maniere suivante:La str DLL Pointeur sur struct [ par kikoff ] ben voila j'ai un gros soucis je dois recuperede la dll une fonction qui renvoit un pointeur sur structureseulement voila comment faire pour recupere Reflection DLL [ par RM50Man ] Voila le code ou j utilise la reflection pour appeler une méthode static dans ma DLL Assembly asm = Assembly.LoadFrom("PremiereDLL.dll"); Type[] types Interop C / C# [ par darknoon29 ] Nous avons un problème avec une dll. En fait, nous avons testé notre dll en la compilant en .exe: nous avons constaté que tout fonctionnait.         prob chargement dll/conversion de type cpp/c# [ par davtemp ] bonjour,J'ai un programme en cpp 6.0 qui charge une dll compilée aussi en cpp 6.0. Mon programme fonctionne bien et j'en suis bien content, sauf que l pb d'importation de dll createprocess pour un pocket pc [ par defcoco ] voila mon pb je voudrais utiliser la fonction createprocess mais je dvp une appli pour pocket pc donc la fonction n'existe pasg vu kil fallait importe Dev DLL en C# utilisation dans Excel,access.. [ par loicd ] Bonjour à tous,je suis dans une impasse...j'ai un projet qui réalise du cryptage via les fonction du framework..tous va bien..il décrypte trés bien da Importer une DLL C dans un prog C# [ par ybuchheit ] Bonjour, Je dois utiliser des fonctions d'une dll écrite en C. J'ai uniquement les prototypes des fonctions, je n'ai pas accès aux sources. Voici mes Allocation d'une structure C dans une dll à partir de C# [ par ClassTiti ] Bonjour,Après m'être renseigné sur les possibilités d'appel d'une dll à partir de C#, j'ai vu qu'il y avait plusieurs moyens pour appeler les fonction


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,172 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.