Pointeur d'un tableau à 2 dimensions vers DLL C++ [Résolu]

Feanor06 34 Messages postés jeudi 18 février 2010Date d'inscription 23 juillet 2010 Dernière intervention - 22 mars 2010 à 15:46 - Dernière réponse : Feanor06 34 Messages postés jeudi 18 février 2010Date d'inscription 23 juillet 2010 Dernière intervention
- 25 mars 2010 à 16:47
Bonjour,

Voilà, j'ai un exe principal en VB.net (VS2008 Express) et une DLL en C++ (Dev-C++).

Je dois passer en paramètre à une fonction de la DLL un pointeur sur un tableau à 2 dimensions (des UShort) créé dans mon programme principal.

Et bien c'est pas évident

Je pensais qu'en utilisant simplement ByRef au lieu de ByVal, ça se ferai tout simplement, mais non... Du coup j'essai de voir ce que je peux faire avec IntPtr mais je n'arrive à rien...

Cela vient-il du type de tableau (2D et UShort) ou de VB.net qui n'aime pas les pointeurs ?
De VB et C++ qui n'interprètent pas de la même façon le tableau ?
Ou est-ce tout simplement impossible ?

Merci beaucou !
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Feanor06 34 Messages postés jeudi 18 février 2010Date d'inscription 23 juillet 2010 Dernière intervention - 25 mars 2010 à 16:47
3
Merci
Bon, ben je suis passé sur 1 dimension et ça fonctionne...

Je me console en me disant que le traitement est plus rapide

Pourquoi j'ai l'impression de parler tout seul ?

Merci Feanor06 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de Feanor06
Feanor06 34 Messages postés jeudi 18 février 2010Date d'inscription 23 juillet 2010 Dernière intervention - 22 mars 2010 à 17:28
0
Merci
J'ajouterai que maintenant, j'arrive à lire le tableau, mais seulement la première ligne, pas le reste... (et en plus en ByVal...)

Voici les déclarations :

EXE :
- Declare Function get_focus Lib "main.dll" (ByVal Buffer(,) As UShort) As Double
- Public imagedata(MAX_WIDTH - 1, MAX_HEIGHT - 1) As UShort
- Gradient = get_focus(imagedata)

DLL :
- get_focus(unsigned short * tab)

Ça semble bien être lié à la 2D...
Mais que faire ? PLEASE HELP

Merci bien !
Commenter la réponse de Feanor06

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.