CopyMemory VB.NET [Résolu]

bouv
Messages postés
1424
Date d'inscription
mercredi 6 août 2003
Dernière intervention
29 juin 2011
- 30 mai 2008 à 15:44 - Dernière réponse : mortalino
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
- 30 mai 2008 à 17:19
Salut,

Je tente de convertir une class de Renfield en .NET, seulement je rencontre des problèmes avec les CopyMemory.

J'ai de violents plantages lors des appels à cette API.

Existe-t-il une alternative à cette API ? ou tout simplement à cette class ?

Merci d'avance

Bonne prog
++
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
mortalino
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
- 30 mai 2008 à 17:00
3
Merci
sinon, j'ai trouvé ça :

   Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" ( _
       <MarshalAsAttribute(UnmanagedType.AsAny)> ByVal Destination As Object, _
       <MarshalAsAttribute(UnmanagedType.AsAny)> ByVal Source As Object, ByVal Length As Integer)
~
<small>[code.aspx?ID=39466 Mortalino] ~
Colorisation automatique</small>

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA

Merci mortalino 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de mortalino
mortalino
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
- 30 mai 2008 à 16:46
0
Merci
Salut Bouv,

question bête : As-tu pensé à remplacer les types Long en type Integer ?

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Commenter la réponse de mortalino
bouv
Messages postés
1424
Date d'inscription
mercredi 6 août 2003
Dernière intervention
29 juin 2011
- 30 mai 2008 à 16:54
0
Merci
Salut,

Oui bien sûr. J'ai bien renommé tout les types.

Renfield utilisait le type Variant dans l'appel de l'API, j'ai essayé de remplacé avec le type Object mais cela ne fonctionne pas.

J'ai donc essayé de créé 3 alias pour le fonction CopyMemory en fonction des types utilisés (Integer vers Integer, Integer vers String, String vers Integer), mais j'ai toujours des soucis.

Bonne prog
++
Commenter la réponse de bouv
mortalino
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
- 30 mai 2008 à 16:58
0
Merci
Type Any au lieu de Variant, peut-être

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Commenter la réponse de mortalino
bouv
Messages postés
1424
Date d'inscription
mercredi 6 août 2003
Dernière intervention
29 juin 2011
- 30 mai 2008 à 17:01
0
Merci
Heu oui je suis allé trop vite.

Type Any transformé en Object effectivement.

Bonne prog
++
Commenter la réponse de bouv
bouv
Messages postés
1424
Date d'inscription
mercredi 6 août 2003
Dernière intervention
29 juin 2011
- 30 mai 2008 à 17:16
0
Merci
C'est beaucoup mieux merci car désormais cela ne plante plus. Et l'API CopyMemory semble jouer son rôle.

Mais le code ne fonctionne toujours pas car je n'arrive pas à récupérer les infos d'une instance à l'autre. Je vais continuer à chercher.

Merci encore pour l'info.

Bonne prog
++
Commenter la réponse de bouv
mortalino
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
- 30 mai 2008 à 17:19
0
Merci
Je t'aurai bien aidé, mais je ne connais pas le dot net. L'info a été trouvé sur ce lien :
http://forum.hardware.fr/hfr/Programmation/VB-VBA-VBS/conversion-laborieux-copymemory-sujet_45235_1.htm

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Commenter la réponse de mortalino

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.