Question : appeler la fonction de DLL de C++ du c#

Je dois appeler une fonction contenue dans un DLL existant écrit dans c++, de mon application que j'ai écrit dans le problème du c#

My est celui-là des paramètres de cette fonction est un indicateur à une structure et je ne peux pas figurer une manière de faire ceci du c#. le prototype de fonction du

The c++ est des paramètres LOINTAINS du

the de FunctionName de PASCAL du

int (param de Parameters*) que Struct est défini comme struct du


typedef {cp de
international ; TB du
international ; carte du
international [8] ; double freq du
[8.16] ;
} Paramètres ; le

I ont avec succès appelé des fonctions de DLL using des indicateurs avant que mais les indicateurs aux structures qui contiennent arrays.

I n'aient jamais essayé le code


struct Prameters
{cp de c# de
international ; TB du
international ; carte du
international [] ; freq de double du
[] ; le

and du
} j'ai le declaration

public international externe peu sûr statique FunctionName (param de fonction de Parameters*) ; le problème du


My est que ceci donne un error

Can de compilation pour ne pas prendre l'adresse de, obtenir la taille de, ou déclarer un indicateur à un type contrôlé le

If je commente dehors les rangées dans le struct qu'il compile bien - mais naturellement la fonction des commentaires du fail

Any serait beaucoup d'appreciated.

Thanks
class= de

Réponse : appeler la fonction de DLL de C++ du c#

Vous pouvez essayer suivez le code :
 [StructLayout (LayoutKind.Sequential, CharSet = CharSet.Ansi)]
        paramètres de struct
        {
            cp d'international ;
            TB d'international ;
            [MarshalAs (UnmanagedType.SysInt, SizeConst = 8)]
            carte d'international [] ;
            [MarshalAs (UnmanagedType.R8, SizeConst = 8)]
            freq de double [] ;          
        }
        [DllImport (« MyDLL.Dll »)]
        charge statique externe publique international FunctionName (param de paramètres de référence) ;
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us