IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Allocation mémoire dynamique


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Allocation mémoire dynamique
    Bonsoir à tous.

    Alors voilà mon pb du moment.
    (j'ai cherché dans les FAQ et les topics sans grand succès)

    Sous VB6 / W Millénium je souhaite attaquer la fonction
    d'allocation mémoire suivante :

    Public Declare Function GlobalAlloc Lib "kernel32"
    (ByVal type_alloc As Long, ByVal taille As Long) As
    ??? pointeur ?

    Sous C++, l'équivalent est :

    GlobalAlloc((UINT)GMEM_MOVEABLE, (DWORD)X_taille);

    retournant une variable de type pointeur sur la zone allouée.

    Comment peut-on sous VB déclarer un pointeur sur un type
    défini par l'utilisateur ?

  2. #2
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Salut

    Bon, là je sens que je m'avance en terrain glissant. Au cas où je dirais des bêtises, je laisse le soin à de plus experts de me corriger...

    J'ai demandé à mon conjoint (qui programme en quick basic) s'il était possible de référer au contenu d'une variable via un pointeur un peu comme en C. Il m'a dit: "Oui, je fais ça tout l'temps"... et l'explication qui a suivi ne m'a pas convaincue.

    Je m'amuse en VB depuis un moment et je n'ai jamais rien vu qui ressemble à un pointeur... J'ai l'impression que VB gère l'allocation de la mémoire tout seul sans qu'on ait quoi que ce soit à faire... avec l'inconvénient qu'on ne peut choisir par soi-même.

  3. #3
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Mais, à tout hasard, regarde dans l'aide du côté de l'objet Marker... Je ne peux vérifer pour le moment chez moi... j'ai des problèmes avec l'affichage de MSDN.

  4. #4
    Membre éclairé
    Avatar de shwin
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2003
    Messages : 568
    Points : 777
    Points
    777
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Declare Function GlobalAlloc Lib "kernel32" Alias "GlobalAlloc" (ByVal wFlags As Long, ByVal dwBytes As Long) As Long
     
    dim lreturn as long
    lreturn = globalalloc(...)
    lreturn va contenir le "pointer"

    If the function succeeds, the return value is nonzero.

    If the function fails, the return value is zero. To get extended error information, call GetLastError.
    Remoting Context Matters
    Everything in this chapter is 100 percent undocumented. Reliance on these techniques is not supported by either Microsoft, the publisher, or the author of this book. Use at you own risk! If your computer won't work afterwards, your toaster blows up or your car doesn't start, I assume no liability whatsoever: You're now about to enter the uncharted territories of .NET and you do so on your own risk. I can only provide some guidance

  5. #5
    Membre éprouvé
    Avatar de ridan
    Inscrit en
    Avril 2003
    Messages
    710
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2003
    Messages : 710
    Points : 1 126
    Points
    1 126
    Par défaut
    salut

    Il y a aussi ce lien :

    http://custom.programming-in.net/art...?f=GlobalAlloc

    Bonne prog.
    @ bientôt

    :: Ressources VB : Cours | FAQ | Sources et surtout La recherche sur le forum

    :: Pour un forum plus propre ...

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci à vous tous.

    Je vais tester la méthode ce week-end.
    Ca devrait me décoincer 4 à 5 applications en attente
    depuis un bon moment.

    Ce sont des architectures VB/C++ appliquées aux domaines
    de calcul intensif suivants :

    * calcul de structures
    * simulation de la gravitation
    * analyses graphiques d'électro-magnétisme
    * combinatoire moléculaire
    ...


  7. #7
    HPJ
    HPJ est déconnecté
    Membre averti

    Profil pro
    Inscrit en
    Mai 2003
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2003
    Messages : 260
    Points : 364
    Points
    364
    Par défaut
    Tu peux obtenir le même résultat sans API avec un tableau (d'octets ou de types composés) de taille dynamique...
    Ca serait plus fiable...
    Avant de poser une question, merci de chercher dans les rubriques suivantes:
    FAQ VB
    Tutoriaux VB
    Recherche avancée sur le forum

Discussions similaires

  1. Réponses: 8
    Dernier message: 26/04/2012, 11h27
  2. Réponses: 10
    Dernier message: 23/03/2012, 06h56
  3. Allocation de mémoire dynamique et tableaux
    Par Merillym dans le forum Débuter
    Réponses: 10
    Dernier message: 07/10/2009, 19h13
  4. Réponses: 28
    Dernier message: 27/05/2007, 15h16
  5. [debutant] : Allocation de mémoire dynamique
    Par sam.fet dans le forum Langage
    Réponses: 5
    Dernier message: 15/02/2006, 14h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo