/netcf
Actualización: noviembre 2007
Establece el compilador de destino de la versión .NET Compact Framework.
/netcf
Comentarios
La opción /netcf hace que el compilador de Visual Basic destine la versión .NET Compact Framework en lugar de la versión completa de .NET Framework. La funcionalidad del lenguaje que está presente sólo en la versión completa de .NET Framework se deshabilita.
La opción /netcf se ha diseñado para utilizarse con /sdkpath. Las características del lenguaje deshabilitadas por /netcf son las mismas 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; sólo está disponible cuando se compila desde la línea de comandos. La opción /netcf se establece cuando se carga un proyecto de dispositivos de Visual Basic. |
La opción /netcf cambia las características de lenguaje siguientes:
La palabra clave End (Visual Basic), que finaliza la ejecución de un programa, está deshabilitada. El programa siguiente lleva a cabo la compilación y la ejecución con /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
El enlace en tiempo de ejecución, en todas sus formas, se deshabilita. Cuando se encuentran escenarios de enlace en tiempo de ejecución, se generan errores en tiempo de compilación. El programa siguiente lleva a cabo la compilación y la ejecución son /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
Los modificadores Auto, Ansi yUnicode (Visual Basic) están deshabilitados. La sintaxis de la instrucción Declare (Instrucción) también cambia a Declare Sub|Function name Lib "library" [Alias "alias"] [([arglist])]. En el ejemplo de 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
Si se utilizan las palabras clave de Visual Basic 6.0 que se eliminaron de Visual Basic, se produce un error diferente que cuando se utiliza /netcf. Esto afecta a los mensajes de error que se muestran para las siguientes palabras clave:
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 la versión .NET Compact Framework, utilizando las versiones de Mscorlib.dll y Microsoft.VisualBasic.dll encontradas en el directorio de instalación predeterminado de la versión .NET Compact Framework de la unidad C. Normalmente, utilizarí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
Vea también
Referencia
Líneas de comandos de compilación de ejemplo