-netcf
Establece que el compilador tenga como destino el entorno .NET Compact Framework.
Sintaxis
-netcf
Comentarios
La opción -netcf
hace que el compilador de Visual Basic tenga como destino el entorno .NET Compact Framework en lugar del .NET Framework completo. Se deshabilita la funcionalidad de lenguaje que solo está presente en el componente .NET Framework completo.
La opción -netcf
está diseñada para usarse con -sdkpath. Las características de lenguaje deshabilitadas por -netcf
son las mismas características de lenguaje que no están presentes en los archivos de destino de -sdkpath
.
Nota
La opción -netcf
no está disponible en el entorno de desarrollo de Visual Studio; solo está disponible cuando se compila desde la línea de comandos. La opción -netcf
se establece cuando se carga un proyecto de dispositivo de Visual Basic.
La opción -netcf
cambia las características de lenguaje siguientes:
Se deshabilita la palabra clave End <keyword> Statement, que finaliza la ejecución de un programa. El siguiente programa se compila y ejecuta sin
-netcf
, pero produce un error en tiempo de compilación con-netcf
.Module Module1 Sub Main() End ' not valid to terminate execution with /netcf End Sub End Module
Se deshabilita el enlace en tiempo de ejecución en todos los formularios. Se generan errores en tiempo de compilación cuando se encuentran escenarios de enlace en tiempo de ejecución reconocidos. El siguiente programa se compila y ejecuta sin
-netcf
, pero produce un error en tiempo de compilación con-netcf
.Class LateBoundClass Sub S1() End Sub Default Property P1(ByVal s As String) As Integer Get End Get Set(ByVal Value As Integer) End Set End Property End Class Module Module1 Sub Main() Dim o1 As Object Dim o2 As Object Dim o3 As Object Dim IntArr(3) As Integer o1 = New LateBoundClass o2 = 1 o3 = IntArr ' Late-bound calls o1.S1() o1.P1("member") = 1 ' Dictionary member access o1!member = 1 ' Late-bound overload resolution LateBoundSub(o2) ' Late-bound array o3(1) = 1 End Sub Sub LateBoundSub(ByVal n As Integer) End Sub Sub LateBoundSub(ByVal s As String) End Sub End Module
Se deshabilitan los modificadores Auto, Ansi y Unicode. La sintaxis de la instrucción Declare también se modifica en
Declare Sub|Function name Lib "library" [Alias "alias"] [([arglist])]
. En el código siguiente se muestra el efecto de-netcf
en una compilación.' compile with: /target:library Module Module1 ' valid with or without /netcf Declare Sub DllSub Lib "SomeLib.dll" () ' not valid with /netcf Declare Auto Sub DllSub1 Lib "SomeLib.dll" () Declare Ansi Sub DllSub2 Lib "SomeLib.dll" () Declare Unicode Sub DllSub3 Lib "SomeLib.dll" () End Module
El uso de palabras clave de Visual Basic 6.0 que se quitaron de Visual Basic genera un error diferente cuando se usa
-netcf
. Esto afecta a los mensajes de error de las palabras clave siguientes:Open
Close
Put
Print
Write
Input
Lock
Unlock
Seek
Width
Name
FreeFile
EOF
Loc
LOF
Line
Ejemplo
El código siguiente compila Myfile.vb
con .NET Compact Framework, mediante las versiones de mscorlib.dll y Microsoft.VisualBasic.dll que se encuentran en el directorio de instalación predeterminado de .NET Compact Framework en la unidad C. Normalmente, se usaría la versión más reciente de .NET Compact Framework.
vbc -netcf -sdkpath:"c:\Program Files\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\v1.0.5000\Windows CE " myfile.vb