begin process at 2012 05 28 22:53:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Autre

 > 

conversion c++ vers c#


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

conversion c++ vers c#

dimanche 15 mars 2009 à 20:21:46 | conversion c++ vers c#

survcopt

Membre Club
Bonjour,
Je cherche à convertir le code d'une dll dont j'ai le source qui est écrit en c++ vers une version en c# car je maîtrise mieux ce langage.
Je cherche donc une âme charitable capable de m'expliquer certaines subtilité de ce code .
je vais que certaines bout de code qui résume le code principale car tout fonctionne pareil après.
Le code est écrit avec visual studio 2005
dans le .cpp

Déclaration de constante liées à la dll
// plugin information
unsigned g_uPluginID          = 0;
char     g_szPluginName[]     = "ExampleInternalsPlugin - 2005.11.30";
unsigned g_uPluginVersion     = 001;
unsigned g_uPluginObjectCount = 1;
InternalsPluginInfo g_PluginInfo;

Déclaration des routines de ce .cpp
// interface to plugin information
extern "C" __declspec(dllexport)
const char* __cdecl GetPluginName() { return g_szPluginName; }
extern "C" __declspec(dllexport)
unsigned __cdecl GetPluginVersion() { return g_uPluginVersion; }
extern "C" __declspec(dllexport)
unsigned __cdecl GetPluginObjectCount() { return g_uPluginObjectCount; }

????
// get the plugin-info object used to create the plugin.
extern "C" __declspec(dllexport)
PluginObjectInfo* __cdecl GetPluginObjectInfo( const unsigned uIndex )
{
  switch(uIndex)
  {
    case 0:
      return  &g_PluginInfo;
    default:
      return 0;
  }
}

????????????
InternalsPluginInfo::InternalsPluginInfo()
{
  // put together a name for this plugin
  sprintf( m_szFullName, "%s - %s", g_szPluginName, InternalsPluginInfo::GetName() );
}

const char*    InternalsPluginInfo::GetName()     const { return ExampleInternalsPlugin::GetName(); }
const char*    InternalsPluginInfo::GetFullName() const { return m_szFullName; }
const char*    InternalsPluginInfo::GetDesc()     const { return "Example Internals Plugin"; }
const unsigned InternalsPluginInfo::GetType()     const { return ExampleInternalsPlugin::GetType(); }
const char*    InternalsPluginInfo::GetSubType()  const { return ExampleInternalsPlugin::GetSubType(); }
const unsigned InternalsPluginInfo::GetVersion()  const { return ExampleInternalsPlugin::GetVersion(); }
void*          InternalsPluginInfo::Create()      const { return new ExampleInternalsPlugin(); }

???
PluginObjectInfo *ExampleInternalsPlugin::GetInfo()
{
  return &g_PluginInfo;
}

Fonction qui est appellée avec comme paramètre un nom de fichier est une string à rajouter dans celui-ci
void ExampleInternalsPlugin::WriteToAllExampleOutputFiles( const char * const openStr, const char * const msg )
{
    ...
}


Fonction qui est appellée quand le programme commmence
void ExampleInternalsPlugin::Startup()
{
    ...   
}

En fait je ne comprends pas sont déclarées les fonctions dans le programme .
le nom de ma solution : InternalsPlugin
le nom du projet : InternalsPlugin

merci pour votre aide..


www.survey-copter.com
dimanche 15 mars 2009 à 23:57:18 | Re : conversion c++ vers c#

gnairod

Ouai et ?
lundi 16 mars 2009 à 09:15:09 | Re : conversion c++ vers c#

survcopt

Membre Club
Merci pour ton aide :-)
En fait je cherche à comprendre ce que veux dire
ExampleInternalsPlugin::Startup()




www.survey-copter.com
lundi 23 mars 2009 à 20:06:09 | Re : conversion c++ vers c#

rt15

Membre Club Administrateur CodeS-SourceS
Salut,

InternalsPluginInfo::InternalsPluginInfo()

Implémentation du constructeur de la classe InternalsPluginInfo.

PluginObjectInfo *ExampleInternalsPlugin::GetInfo()

Méthode GetInfo de la classe ExampleInternalsPlugin, renvoyant un pointeur sur une instance de PluginObjectInfo.

extern "C" __declspec(dllexport)

__declspec(dllexport) -> La fonction va être exporté. Cela veut dire que son nom sera mis dans la table d'export du fichier exécutable résultant (.dll, .ocx...). Donc un autre exécutable pourra appeler cette fonction après avoir charger l'autre fichier exécutable.

extern "C" -> Pour ne pas être gené par le C++ qui a tendance à mettre un peu n'importe quoi comme nom de fonction. On dit que c'est une fonction comme C.

Hésite pas à redemander si j'ai pas été assez clair.


Cette discussion est classée dans : const, return, char, internalsplugininfo, exampleinternalsplugin


Répondre à ce message

Sujets en rapport avec ce message

const char * => char * [ par Xs ] salut !!je galere grave dand beaucoup de mes programmes a causes de quelqes trucs :const char * => char *char * => charchar => char *eventuellement ch Questions sur les fonctions ! (suis un debutant) [ par sebclick ] slt tlmje programme en c++ depuis qlql semaines... et la je viens de decouvrir ce site... ça tombe bien j'ai un petit pb.Lorsque l'on créer une foncti Petite question ayant attrait à la gestion de fichier. [ par meteore ] Voila je suis en train de faire un petit logiciel pour le classement de mes cds.J'ai donc créer une fonction permettant d'ajouter un cd dans une boite Crash a l'execution mais non en mode de debuggage [ par cybermatthieu ] La si je roule le programme avec le mode de debugage tout fonctionne a merveille il termine l'execution normalement. Mais si je roule le programme ( s MessageBox - Const Char - Concversion ASCII [ par guitoulefoux ] Bonjour,J'ai encore besoin de vos lumieres (et ca sera pas la derniére)1- j'utilise une boucle pour récupérer les actions clavier:if(GetAsyncKeyState( RegOpenKeyEx [ par guitoulefoux ] Bonjour,Pourriez vous m'aider a corriger mon erreur.Voici mon bout de code :TCHAR MenDema[1024];[...]HKEY hKey;RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWA return tableau de caracteres en C++ [ par sozer2 ] Bonjour j'aimerai savoir comment retourner correctement un tableau de caractère en C++Voici mon code qui contient une erreur au niveau du return et au Manip' des variables du type char... [ par DJeS ] J'ai d'eternels problemes pour manipuler les variables char, const char etc...quand je veux faire passer un argument char a un fonction j'ai souvent d bug visual ? [ par magic_Nono ] petit test:au sein d'une classe, définissez un opérateur de cast vers char*exemple operator char*() { if(i_taille==0) return ""; client smtp probleme [ par lombredudragon ] Voila j'ai trouver un joli code sur le web. J'ai fait le menage et j'ai supprimer l'interface graphique.Donc mon but final c'est d'envoyer un fichier


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,250 sec (3)

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