Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1454 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#/COM]décallage de la valeurs des param lors d'appel COM

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C#/COM]décallage de la valeurs des param lors d'appel COM

n°1427203
eld
Posté le 18-08-2006 à 14:06:34  profilanswer
 

voici la signature de la fonction de l'objet COM que j'appelle et la description que j'en ai faite pour l'interfaçage

Code :
  1. virtual HRESULT GetResultInfo(unsigned int _res, DLLRESULT * _dllResult) = 0;
  2.         [PreserveSig]
  3.         int GetResultInfo(
  4.             [In] uint res,
  5.             [In] ref DLLRESULT _dllResult
  6.             );


quand j'appelle cette fonction depuis mon code C# et que je donne par exemple la valeur 17 à _res, dans l'objet COM c'est *_dllResult qui a la valeur 17... d'ou peut venir ce décallage ? :|

mood
Publicité
Posté le 18-08-2006 à 14:06:34  profilanswer
 

n°1428825
_Mose_
Lonesome coder
Posté le 21-08-2006 à 18:20:22  profilanswer
 

La seule raison plausible que je vois, c'est que ta structure n'est pas conforme à ce qui est attendu.
Je suis pas un expert, mais t'es sûr de tes flags ?
T'es sur de l'ordre des champs ?
Y'as pas un autre sample sur le net qui tourne avec une autre structure que tu pourrais essayer, histoire de voir si c'est ton implémentation qui foire ?

n°1429180
eld
Posté le 22-08-2006 à 11:11:41  profilanswer
 

les flags je n'en suis pas certain, mais je me suis inspiré de la librairie directshownet
l'odre des params est bon
à priori la struct est passée par référence, donc on a un entier non signé de 32 bits et une adresse de 32 bits

n°1429220
_Mose_
Lonesome coder
Posté le 22-08-2006 à 12:01:06  profilanswer
 

Mouaip... je vois pas trop.
T'as accès à la partie COM ? Si oui, je serais toi, j'essayerais de faire un pti programme qui teste la taille (sizeof) de la structure complète ainsi que des chacune de ses partie. Et du côté C# aussi.
 
C'est quoi le flag PreserveSig, j'ai bien compris dans la doc ?
T'as essayé sans ?

n°1429261
eld
Posté le 22-08-2006 à 13:16:28  profilanswer
 

_Mose_ a écrit :

Mouaip... je vois pas trop.
T'as accès à la partie COM ? Si oui, je serais toi, j'essayerais de faire un pti programme qui teste la taille (sizeof) de la structure complète ainsi que des chacune de ses partie. Et du côté C# aussi.
 
C'est quoi le flag PreserveSig, j'ai bien compris dans la doc ?
T'as essayé sans ?


ce flag concerne la valeur de retour, une question d'inversion de signe ou je ne sais plus exactement... il est utilisé sur toute la librairie directshownet
j ai acces au code COM, mais vu que le pointeur sur la structure a la valeur de l int que je met en parameetre... :| je vais tester quand meme ^^

n°1429604
_Mose_
Lonesome coder
Posté le 22-08-2006 à 19:16:22  profilanswer
 

Bah sinon, tu peut essayer de passer une structure légèrement différente, genre avec deux int, puis avec deux adresse, histoire de voir si t'as encore des décalages.
Y'a ptet qu'un seul de deux types qui merde.
Si ca merde tout le temps, c'est que le pb vient d'ailleurs :)
 
(Pitain je me sens trop utile moi :))

n°1429804
eld
Posté le 23-08-2006 à 10:27:10  profilanswer
 

ben en tout cas c'est gentil d'essayer, je sais pas comment je fais pour avoir des bugs comme ça moi ^^


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#/COM]décallage de la valeurs des param lors d'appel COM

 

Sujets relatifs
[Resolu][C#.NET] Appel methode static impossible ?EXCEL VBA - Bug pour affecter valeurs dans tableau
Select multiple recuperer toutes les valeursRequete SQL : sélectionner 1 date ou 1 autre en fonct de leurs valeurs
Déclaration et appel de fonctionOrigine des valeurs envoyées par POST
[Résolu] [C# .net] Récupérer des valeurs dans un GridView[RESOLU]Lire quelques valeurs sur une base Mysql d'un forum ipb
AJAX, appel fichier exterieur en localProblème à l'appel de mon service web via le browser
Plus de sujets relatifs à : [C#/COM]décallage de la valeurs des param lors d'appel COM


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR