Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [VB] DLL Come usare le funzioni senza dichiarare le variabili

    Ho creato una DLL, è ho notato che non mi permette di usare delle variabili non dichiarate, al contrario di tutte le DLL fatte da persone sicuramente + competenti di me.
    Voi mi direte, ma dichiara correttamente le variabili, e io vi dirò, no, perchè la DLL la utilizzo anche con gli script dove credo non si possa fare.

    In breve:

    'Questo funziona:
    Dim A as string
    Msgbox funzione(A)

    'Questo no:
    Dim A
    Msgbox funzione(A) 'Ma in VBScript sono costretto ad usare questo.

    'La funzione la scrivo cosi':
    Function Funzione(A as string)
    Funzione = A
    End function

    dove sbaglio???? GRAZIE!!!
    jabjoint

  2. #2
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    non ho capito molto cosa intendi però ti dico:

    forse ti riferisci a componenti dichiarati come shared?

    forse perche in quel modo passi A come variant (o object a seconda della versione di VB) mentre la function vuole una stringa?


  3. #3
    si esattamente, ma altre funzioni che ho avuto modo di usare, anche se gli passi il variant non hanno problemi, mentre la mia si perchè?
    jabjoint

  4. #4
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da jabjoint
    si esattamente, ma altre funzioni che ho avuto modo di usare, anche se gli passi il variant non hanno problemi, mentre la mia si perchè?
    effettivamente non me lo spiego, visto che cmq la stringa dovrebbe accettarla...

    praticamente che errore ti da?

  5. #5
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    potrebbe essere un problema di dichiarazione, la A, al momento della chiamata della funzione è nothing...hai provato ad associarle un valore valido prima?

  6. #6
    L' unico modo e convertire in stringa la variabile, sempre se esiste questa funzione in VBSscrip: "CStr"

    bhè provo cmq, come fanno i programmatori di "FUNZIONI" a fare in modo che non dia l' errore "TIPO NON CORRISPONDENTE" ? Grazie spero che qualcuno mi aiuti, nn posso fare le cose male!
    jabjoint

  7. #7
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da jabjoint
    L' unico modo e convertire in stringa la variabile, sempre se esiste questa funzione in VBSscrip: "CStr"

    bhè provo cmq, come fanno i programmatori di "FUNZIONI" a fare in modo che non dia l' errore "TIPO NON CORRISPONDENTE" ? Grazie spero che qualcuno mi aiuti, nn posso fare le cose male!
    giusto, non DEVI fare le cose male

    cmq è sicuramente legato al tipo di dato che tratti...dai che risolvi.

    Purtroppo non conosco il VBScript e non saprei dirti come si comportano i tipi di dati lì

    al limite riscrivi la funzione dicendo che accetta un VARIANT e poi fai la conversione dentro la funzione stessa rpima di usare il valore

  8. #8
    ok grazie, bho, non ho trovato la soluzione elegante, ma cmq converto le variabili in cio' che serve. Cosi' non è neanche male, anche se sarei stato + felice se ... pero' Grazie di tutto cmq, ciao!
    jabjoint

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.