Compartilhar via


-netcf

Define o compilador como destino para o .NET Compact Framework.

Sintaxe

-netcf

Comentários

A -netcf opção faz com que o compilador do Visual Basic direcione o .NET Compact Framework em vez do .NET Framework completo. A funcionalidade de linguagem presente apenas na .NET Framework completa está desabilitada.

A -netcf opção foi projetada para ser usada com -sdkpath. Os recursos de linguagem desabilitados são -netcf os mesmos recursos de linguagem que não estão presentes nos arquivos direcionados.-sdkpath

Observação

A opção -netcf não está disponível no ambiente de desenvolvimento do Visual Studio; ela só está disponível ao compilar na linha de comando. A opção -netcf é definida quando é carregado um projeto de dispositivo do Visual Basic.

A -netcf opção altera os seguintes recursos de idioma:

  • A palavra-chave Da palavra-chave< End>, que encerra a execução de um programa, está desabilitada. O programa a seguir compila e é executado sem -netcf, mas falha no tempo de compilação com -netcf.

    Module Module1
        Sub Main()
            End   ' not valid to terminate execution with /netcf
        End Sub
    End Module
    
  • A associação tardia, em todos os formulários, está desabilitada. Erros de tempo de compilação são gerados quando cenários de associação tardia reconhecidos são encontrados. O programa a seguir compila e é executado sem -netcf, mas falha no tempo de compilação com -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
    
  • Os modificadores Auto, Ansi e Unicode estão desabilitados. A sintaxe da Instrução Declare também é modificada para Declare Sub|Function name Lib "library" [Alias "alias"] [([arglist])]. O código a seguir mostra o efeito de -netcf uma compilação.

    ' 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
    
  • Usar palavras-chave do Visual Basic 6.0 que foram removidas do Visual Basic gera um erro diferente quando -netcf é usado. Isso afeta as mensagens de erro para as seguintes palavras-chave:

    • Open

    • Close

    • Put

    • Print

    • Write

    • Input

    • Lock

    • Unlock

    • Seek

    • Width

    • Name

    • FreeFile

    • EOF

    • Loc

    • LOF

    • Line

Exemplo

O código a seguir compila Myfile.vb com o .NET Compact Framework, usando as versões de mscorlib.dll e Microsoft.VisualBasic.dll encontradas no diretório de instalação padrão do .NET Compact Framework na unidade C. Normalmente, você usaria a versão mais recente do .NET Compact Framework.

vbc -netcf -sdkpath:"c:\Program Files\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\v1.0.5000\Windows CE " myfile.vb

Confira também