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
    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
    Membre Expert
    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
    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
    Membre Expert
    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
    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 émérite
    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
    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.

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

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

    Il y a aussi ce lien :

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

    Bonne prog.

  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
    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 expérimenté

    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
    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...

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