begin process at 2012 02 10 10:35:56
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Système

 > 

Mémoire

 > 

Retour d une DLL


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Retour d une DLL

mercredi 14 juin 2006 à 14:36:37 | Retour d une DLL

ZaRMaS

Salut a tous,

J ai un petit probleme avec ma dll code en C. Elle retourne un char * et je cherche a recuperer en csharp le retour de cette fonction. Voici ma declaration

      [DllImport("myDll.dll")]
        public static extern unsafe string myFunction([MarshalAs(UnmanagedType.LPArray)] byte[] myData, int width, int height);
Donc elle prend en parametre un tableau de byte et cela ne pose aucun probleme;

Voici la fonction code en C :

 char        *myFunction(char *myData, int Arg_width, int Arg_height)
{
    char *myNewData  =malloc(strlen(myData) * sizeof (char));

    //La fonction remplie myNewData;

    return (myNewData)
}

Ce qui me parait etrange et qui explique pk je psote du code en C c est que ca marche des fois et d autre "non" comme si j avais rate un malloc. APres avoir bien verifie je trouve rien de suspect et donc jeme suis dit que cela pouvait venir du cast entre le string et le char *. Si quelqu un a quelques idees pour m expliquer ce qui pourrait ne pas aller je suis preneur

Merci par avance
jeudi 15 juin 2006 à 00:51:19 | Re : Retour d une DLL

Lutinore

Administrateur CodeS-SourceS

Salut, j'avais remarqué ça l'autre fois ici :

http://www.csharpfr.com/infomsg_DLL_757801.aspx

tu passes un tableau et tu le reçois en tant que pointeur char* dans ton code C. Mais la question que je me pose, il est ou le caractère null '\0' dans ta chaine myData !?

En ce qui concerne le retour de chaine par pointeur char* j'ai vu que Microsoft utilisait CoTaskMemAlloc :

// CPP

DLLIMPORT char* ReturnString()
{
 char* s = (char*)CoTaskMemAlloc( 16 );
 strcpy( s, "Hello World" );
 return s;
}

// C#

[ DllImport( ".." ) ]
private static extern string ReturnString();



Cette discussion est classée dans : code, int, dll, char, retour


Répondre à ce message

Sujets en rapport avec ce message

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 int (ASCII) to char (ou string) [ par JuS ] Bonjour amis développeurs cshapriens,Je cherche à récupérer le caractère correspondant à un code ASCII.Comment faire ???//code ASCII du "A"int code = convertion C -> C# [ par LordBob ] Bonjour a tous, voila je cherche à convertire une fonction que j'ai codé en C en C#... voila la fonction C:         static private int MSNBruteForce( Convertion int en char [ par cedkat ] Bonjour,Je doit réecrire une portion de code qui consiste à crypter un fichier text ecrit à l'origine c++.En applicant le même code, je n'arrive pas a C# et Dll C++ [ par rbonnal ] Bonjour a tous !  Je répète que suis aussi fort en Dll et Pointeurs de fonctions [ par phantom_2005 ] Bonjour à tous, j'ai un problème concernant l'appel d'une fonction dans une dll. Cette fonction prend comme argument un pointeur vers une fonction. Besion d'aide pour une dll c++ ds un pgm c# [ par sivaa ] Bonjour, Je suis complètement désespérer. Je cherche compiler 2 fichiers c++, une class et ces fonctions et ensuite de prendre ce dll et de l’utilise Appeler une DLL C en Csharp [ par bananito ] Bonjour à tous, Je cherche a appeler une DLL en C depuis Csharp. J'ai 2 fonctions a appeler [code=cpp] __declspec(dllexport) void fonction1 (char* Reflexion de Type et de Méthode (WPF) .Net 4 [ par cboulas ] Salut à tous, Voici mon problème auquel j'ai un mal fou à résoudre : J'ai une interface qui charge en dynamique des DLL : base.dll et objets.dll ba Passer une structure à une DLL en C [ par dark_naruto25 ] Salut à tous ! Voilà mon souci, pour le boulot je dispose d'un DLL (conçu en C) que je dois initialisé depuis mon code C#. Ma structure ressemble à q


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales