Zitat von
Sanchez:
Die
VCL.NET solltest du wirklich maximal zu Übergangszwecken verwenden (z.B. bestehende Anwendungen portieren, ...). Sie greift über P/Invokes weiterhin auf die
WinAPI zu. Das macht die Anwendung langsam und unportierbar.
Möglicherweise hilft sie dir beim Einstieg in .NET aber du solltest so bald wie möglich auf WinForms umsteigen.
Einspruch!
Auch WinForms Anwendungen machen sehr viel gebrauch von P/Invoke. Da ist WinForms nicht besser als
VCL.NET. Was aber MS mit WinForms besser machen kann ist die entsprechenden P/Invoke-Zugriffe im .NET-Redistributable-
DLL's zu verpacken und und diese als "sichere"
DLL's einen schnelleren P/Invoke-Mechanismus zukommen zu lassen. Borland-
VCL-
Dll's oder in die Exe gelinkte P/Invoke-Aufrufe werden vom .NET niemals so weitreichendes Vertrauen bekommen wie die eigentlichen .NET-
DLL's.
Was mit Sicherheit auch besser bei WinForms ist das es weniger Altlasten gibt. WinForms setzt als minimum ein Win98 mit IE 5 vorraus.
VCL(.NET) basiert im Kern immer noch auf die erst Win16-Version.
WinForms-Controls unter .NET 1.1 sind auch nur "simple" Wrapper um den im BS vorhanden
Win32-Controls. Erst mit .NET 2.0 fängt MS an CustomControls komplett in .NET zu entwickeln mit nur minimalen
Win32-Abhänigkeiten (Es ist immer noch ein Windows-
Handle nötig).
Windows Vista - Eine neue Erfahrung in Fehlern.