Compartir a través de


-netcf

Establece el compilador como destino .NET Compact Framework.

Sintaxis

-netcf

Observaciones

La -netcf opción hace que el compilador de Visual Basic se dirija a .NET Compact Framework en lugar de a .NET Framework completo. La funcionalidad de lenguaje que solo está presente en .NET Framework completa está deshabilitada.

La -netcf opción está diseñada para usarse con -sdkpath. Las características de idioma deshabilitadas por -netcf son las mismas características de idioma que no están presentes en los archivos destinados a -sdkpath.

Nota:

La -netcf opción no está disponible desde el entorno de desarrollo de Visual Studio; solo está disponible al compilar desde la línea de comandos. La -netcf opción se establece cuando se carga un proyecto de dispositivo de Visual Basic.

La -netcf opción cambia las siguientes características de lenguaje:

  • La palabra clave> End <Statement, que finaliza la ejecución de un programa, está deshabilitada. El siguiente programa compila y se 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
    
  • El enlace en tiempo de espera, en todos los formularios, está deshabilitado. Los errores en tiempo de compilación se generan cuando se detectan escenarios de enlace en tiempo de ejecución reconocidos. El siguiente programa compila y se 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
    
  • Los modificadores Auto, Ansi y Unicode están deshabilitados. La sintaxis de la instrucción Declare también se modifica a Declare Sub|Function name Lib "library" [Alias "alias"] [([arglist])]. El código siguiente 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 -netcf se usa. Esto afecta a los mensajes de error de 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 se compila Myfile.vb con .NET Compact Framework, con 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, 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

Consulte también