Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    25

    [NET] Dll per collegamento ethernet

    Ho scaricato una dll per collegarmi ad un plc della GE
    Il problema è che gli esempi sono per visual basic 6....

    Inizialmente nell'esempio c'è la dichiarazione di variavili:

    Codice PHP:
    Dim dev As vHMIGECommLib.CDevice
    Dim WhitEvents GEEthernet 
    As vHMIGECommLib.CGEEthernet 
    e fin qui ok ma quando scrivo l'editor mi toglie WhitEvents.

    Poi nel form Load mi dice di fare questo:

    Codice PHP:
    Set dev = New vHMIGECommLib.CDevice 
    e l'editor mi toglie il set visto che questa istruzione non si usa +

    poi c'è la connessione al plc e qui ho problemi.... la guida dice così:

    Codice PHP:
    Privare Sub cmbConnect_Click()

    Set GEEthernet dev.CreateDevice(ge_ethernet)
    'Create a GE ethernet object
    With GEEthernet
    .....
    .....
    tutte i parametri x la connessione ethernet
    End With
    End Sub 
    Questo non riesco a capire come si scrive in vb net chi mi da una mano??
    Grazie!
    Tony

  2. #2
    Il codice interno alla sub va quasi completamente bene, devi riscriverne "l'involucro" in modo che rispecchi la nuova sintassi dei gestori di eventi. Una volta aggiunta la ComboBox cmbConnect al form tramite il designer di form inserisci il seguente codice:
    codice:
    Private Sub cmbConnect_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmbConnect.Click
    GEEthernet = dev.CreateDevice(ge_ethernet)
    'Create a GE ethernet object
    With GEEthernet
    .....
    .....
    tutte i parametri x la connessione ethernet
    End With
    End Sub
    .
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    25
    grazie MItaly ma avevo già provato così visto che comunque anche nella dichiarazione sopra cioè nel
    Codice PHP:
    Private Sub Form_Loar() 
    avevo dovuto adattare alla versione net!

    Ora ti spiego cosa mi scrive.
    Quando scrivo
    Codice PHP:
    GEEthernet dev.CreateDevice(ge_ethernet
    quel ge_ethernet tra le parentesi me lo sottolinea e quando ci vado sopra col mouse mi esce la scritta nome non dichiarato!
    Poi se lancio l'applicazione mi segna errore alla riga sottostante e mi dice:
    Riferimento ad un ogetto non impostato su un istanza di ogetto.
    e mi suggerisce usa la parola chiave New per creare un istanza di ogetto... :master:
    non so che fare...
    Grazie in ogni caso!

  4. #4
    Probabilmente ge_ethernet è un membro di una qualche enumerazione... che firma ha il metodo vHMIGECommLib.CDevice.CreateDevice, o, più semplicemente, di che tipo è il parametro che devi passare a CreateDevice?
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    25
    MItaly queste cose dove le vedo?
    scusami ma probabilmente sono ancora troppo impedito x capire certe cose anche se mi sembrava abbastanza facile come cosa!
    il problema è che avevo perso tempo per fare l'interfaccia e ora che restava solo collegarsi all'hardware non riesco ad andare avanti

  6. #6
    Originariamente inviato da silver79
    MItaly queste cose dove le vedo?
    Nell'Object Browser, o anche semplicemente quando inizi a digitare "dev.CreateDevice(" ti dovrebbe venir fuori la firma del metodo, tipo del parametro passato compreso.
    scusami ma probabilmente sono ancora troppo impedito x capire certe cose anche se mi sembrava abbastanza facile come cosa!
    Ma è facile!
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    25
    grazie per la pazienza.... allora:

    quando sto digitando dev. mi continua con CreateDevice e poi scrive questo:
    Public Function CreateDevice(ByRef dev As vHMIGECommlib.eGECOmmDevice)As Object

    ma dev.CreateDevice lo sottilinea e quando ci vado sopra mi scrive così:
    "CreateDevice" non è un mebro di "vHMIGECommlib.CDevice"


    comunque stò seguendo questa piccola guida:
    http://www.vhmiautomation.com/PLCDIndv.html
    chiaramente dove dice GE ActiveX DLL

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.