Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente bannato
    Registrato dal
    Jun 2005
    Messaggi
    42

    [VB6] strttura di una type

    ciao a tutti, qualcuno sa dirmi come fare a reperire le informazioni di una struttura definita dall'utente (UDT)?
    grazie

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ovvero?

  3. #3
    Utente bannato
    Registrato dal
    Jun 2005
    Messaggi
    42
    Originariamente inviato da oregon
    Ovvero?
    se per es. ho una type cosi

    codice:
    type myStruc
      iNum as integer
      str as string
      lNum as long
    end type
    vorrei trovare dove viene memorizzata la struttura in memoria.. vorrei andare in memoria e estrarre il valore di lNum...
    per esempio in c la struttura non è altri che una sequenza di byte... in vb no.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    798
    il puntatore alla struttura type? VarPtr(myStruc) se è quello che intendi.
    Ans.

  5. #5
    Utente bannato
    Registrato dal
    Jun 2005
    Messaggi
    42
    Originariamente inviato da ans
    il puntatore alla struttura type? VarPtr(myStruc) se è quello che intendi.
    varPtr mi da l'indirizzo in memoria di dove inizia la struttuta, a me serve l'indirizzo di memoria di ognuno dei suoi elementi

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    codice:
    Private Type myStruc
      iNum As Integer
      str As String
      lNum As Long
    End Type
    
    Dim t As myStruc
    
    Private Sub Form_Click()
        Print Hex$(VarPtr(t))
        Print
        Print Hex$(VarPtr(t.iNum))
        Print Hex$(VarPtr(t.str)), Hex$(StrPtr(t.str))
        Print Hex$(VarPtr(t.lNum))
    End Sub
    ma non comprendo (anche se ci sara' ...) il motivo di una tale richiesta ...

  7. #7
    Utente bannato
    Registrato dal
    Jun 2005
    Messaggi
    42
    Originariamente inviato da oregon
    codice:
    Private Type myStruc
      iNum As Integer
      str As String
      lNum As Long
    End Type
    
    Dim t As myStruc
    
    Private Sub Form_Click()
        Print Hex$(VarPtr(t))
        Print
        Print Hex$(VarPtr(t.iNum))
        Print Hex$(VarPtr(t.str)), Hex$(StrPtr(t.str))
        Print Hex$(VarPtr(t.lNum))
    End Sub
    ma non comprendo (anche se ci sara' ...) il motivo di una tale richiesta ...
    il motivo alla base di tale richiesta sta nel fatto che sto facendo la migrazione di un programma in vb3 ... e LSET mi canna...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.