Principale utente con più risposte
definizione parametri di funzione

Domanda
-
Ho neccesità di chiamare una dll c# che espone una funzione in cui un parametro è di tipo ref object miaStru.
devo passare a questa funzione un elemento di una struttura (definita nella dll c# che contiene un campo dichiarato _fixedbuffer). Definizione funzione c#: public void RiempiValore (ref object miaStru, byte[] buffer)
Chiamata da vb.net: RiempiValore(Struttura.Elemento(0).Etichetta, buffer)
Errore:
Option Strict On non consente la riduzione dal tipo 'Object' al tipo 'Struttura.Elemento.<PhoneLabel>e__FixedBufferf' quando il valore del parametro 'ByRef' 'miaStru' viene ricopiato nell'argomento corrispondente.
Come posso fare?
posso modificare il il codice c# sia quello vb
Grazie
Roberto
Risposte
-
Dato che passi Etichetta, al posto di Object puoi mettere il tipo di Etichetta.
- Proposto come risposta Renato Marzaro []Moderator sabato 4 marzo 2017 07:50
- Contrassegnato come risposta Renato Marzaro []Moderator lunedì 6 marzo 2017 08:07
-
Se _fixedbuffer è definito nella DLL anche VB.Net dovrebbe poterlo conoscere.
- Modificato BlueLed martedì 28 febbraio 2017 10:43
- Proposto come risposta Renato Marzaro []Moderator sabato 4 marzo 2017 07:50
- Contrassegnato come risposta Renato Marzaro []Moderator lunedì 6 marzo 2017 08:07
Tutte le risposte
-
Dato che passi Etichetta, al posto di Object puoi mettere il tipo di Etichetta.
- Proposto come risposta Renato Marzaro []Moderator sabato 4 marzo 2017 07:50
- Contrassegnato come risposta Renato Marzaro []Moderator lunedì 6 marzo 2017 08:07
-
grazie per suggerimento,
forse ho trovato la soluzione, dovrò verificarla in tutti i passaggi, ma l'idea è buona anche se il tipo di Etichetta è _fixedbuffer e non c'è equivalenza in vb.net .
per ora ho risolto in questo modo:
chiamata da vb: RiempiValore(DirectCast(Struttura.Elemento(0).Etichetta, Object), buffer)
-
Se _fixedbuffer è definito nella DLL anche VB.Net dovrebbe poterlo conoscere.
- Modificato BlueLed martedì 28 febbraio 2017 10:43
- Proposto come risposta Renato Marzaro []Moderator sabato 4 marzo 2017 07:50
- Contrassegnato come risposta Renato Marzaro []Moderator lunedì 6 marzo 2017 08:07