Freigeben über


-netcf

Legt den Compiler auf .NET Compact Framework fest.

Syntax

-netcf

Bemerkungen

Die -netcf Option bewirkt, dass der Visual Basic-Compiler auf .NET Compact Framework anstatt auf das vollständige .NET Framework ausgerichtet ist. Sprachfunktionen, die nur im vollständigen .NET Framework vorhanden sind, sind deaktiviert.

Die -netcf Option wurde für die Verwendung mit -sdkpath entwickelt. Die deaktivierten Sprachfeatures -netcf sind die gleichen Sprachfeatures, die nicht in den Dateien vorhanden sind, die mit -sdkpath.

Hinweis

Die -netcf Option ist nicht in der Visual Studio-Entwicklungsumgebung verfügbar. Sie ist nur verfügbar, wenn Sie über die Befehlszeile kompilieren. Die -netcf Option wird festgelegt, wenn ein Visual Basic-Geräteprojekt geladen wird.

Die -netcf Option ändert die folgenden Sprachfeatures:

  • Das Schlüsselwort "End <Keyword> Statement ", das die Ausführung eines Programms beendet, ist deaktiviert. Das folgende Programm kompiliert und wird ohne -netcf fehler beim Kompilieren mit -netcf.

    Module Module1
        Sub Main()
            End   ' not valid to terminate execution with /netcf
        End Sub
    End Module
    
  • Die späte Bindung in allen Formularen ist deaktiviert. Kompilierungszeitfehler werden generiert, wenn erkannte Spätbindungsszenarien auftreten. Das folgende Programm kompiliert und wird ohne -netcf fehler beim Kompilieren mit -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
    
  • Die Modifizierer "Auto", "Ansi" und "Unicode " sind deaktiviert. Die Syntax der Declare-Anweisung wird ebenfalls geändert in Declare Sub|Function name Lib "library" [Alias "alias"] [([arglist])]. Der folgende Code zeigt den Effekt -netcf einer Kompilierung.

    ' 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
    
  • Wenn Sie Visual Basic 6.0-Schlüsselwörter verwenden, die aus Visual Basic entfernt wurden, wird bei Verwendung ein anderer Fehler -netcf generiert. Dies wirkt sich auf die Fehlermeldungen für die folgenden Schlüsselwörter aus:

    • Open

    • Close

    • Put

    • Print

    • Write

    • Input

    • Lock

    • Unlock

    • Seek

    • Width

    • Name

    • FreeFile

    • EOF

    • Loc

    • LOF

    • Line

Beispiel

Der folgende Code kompiliert Myfile.vb mit .NET Compact Framework unter Verwendung der Versionen von mscorlib.dll und Microsoft.VisualBasic.dll im Standardinstallationsverzeichnis von .NET Compact Framework auf dem C-Laufwerk. In der Regel verwenden Sie die neueste Version von .NET Compact Framework.

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

Siehe auch