Bonjour,

je développe actuellement des Macros d'automatisation pour l'application SolidEdge.

J'ai quelques problèmes avec des fonctions fourni dans le SDK de SolidEdge :
par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
void GetEndPoints(
    out Array StartPoint,
    out Array EndPoint
)
Cette fonction demande en paramètre (ref/out) des System.Array (qui sont en fait des double[]).
Le problème est que quand je passe en paramètre un double[], ça ne fonctionne pas. Et je sais pas quoi faire pour y arriver.

En cherchant une solution je me suis retrouver sur cette page de MSDN pour les tableaux et le Marshaling (L'interopérabilité entre .NET et SolidEdge passant par Marshal). J'ai essayé d'implémenter une solution

Code : Sélectionner tout - Visualiser dans une fenêtre à part
void New2([MarshalAs(UnmanagedType.LPArray, SizeConst = 3)] double[] ar);
Mais ça me mets invariablement une erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 'SEPNv2.wDefault.New2(double[])' doit déclarer un corps, car il n'est pas marqué comme abstract, extern ou partial.
Donc si vous avez des solutions ou des idées pour continuer ma recherche, hésitez pas !