me gustaría saber por qué me da error cuando a una función de VB .NET le paso por valor (ByVal) una estructura (Structure).
La función es ésta:
Cita:
Y la estructura es esta: Public Sub setFamiliares(ByVal numFam as Integer, ByVal fam1 As Modulo_Estructuras.datosFamiliares, ByVal fam2 As Modulo_Estructuras.datosFamiliares)
numFamilias = numFam
If (numFamilias = 1) Then
familia1 = fam1
setIconoFamiliares(True)
ElseIf (numFamilias = 2) Then
familia1.cod_us = fam1.cod_us
familia1.comentario_fm = fam1.comentario_fm
familia2.cod_us = fam2.cod_us
familia2.comentario_fm = fam2.comentario_fm
setIconoFamiliares(True)
Else
familia1.cod_us = ""
familia2.comentario_fm = ""
setIconoFamiliares(False)
End If
End Sub
numFamilias = numFam
If (numFamilias = 1) Then
familia1 = fam1
setIconoFamiliares(True)
ElseIf (numFamilias = 2) Then
familia1.cod_us = fam1.cod_us
familia1.comentario_fm = fam1.comentario_fm
familia2.cod_us = fam2.cod_us
familia2.comentario_fm = fam2.comentario_fm
setIconoFamiliares(True)
Else
familia1.cod_us = ""
familia2.comentario_fm = ""
setIconoFamiliares(False)
End If
End Sub
Cita:
Dicha estructura está almacenada en el fichero "Modulo_Estructuras.vb"Structure datosFamiliares
<VBFixedString(7)> Dim cod_us As String
<VBFixedString(1000)> Dim comentario_fm As String
End Structure
<VBFixedString(7)> Dim cod_us As String
<VBFixedString(1000)> Dim comentario_fm As String
End Structure
El error lo da en la declaración de la función:
Cita:
Y me dice:Public Sub setFamiliares(ByVal numFam, ByVal fam1 As Modulo_Estructuras.datosFamiliares, ByVal fam2 As Modulo_Estructuras.datosFamiliares)
Cita:
'fam1' no puede exponer el tipo 'Modulo_Estructuras.datosFamiliares' fuera del proyecto a través de class 'Form_Acciones_Nuevo_Usuario'
Cita:
"Form_Acciones_Nuevo_Usuario" es el formulario donde se encuentra la función "setFamiliares"'fam2' no puede exponer el tipo 'Modulo_Estructuras.datosFamiliares' fuera del proyecto a través de class 'Form_Acciones_Nuevo_Usuario'
¿Qué podría ser? ¿Por qué peta?