vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: anfaenger_michael
Datum: 04.03.19 10:31

Moin moin,

ich möchte auf eine Neuere Ausführung von Visual Basic umsteigen.
Möchte aber meine Kenntnisse aus VB6 nicht ganz umsonst gemacht haben.
Hat hier jemand einen Tipp auf was ich Umsteigen kann ?
Hier gibt es ja Zig Variationen von VB.



Danke.


Gruß
Michael

Beitrag wurde zuletzt am 04.03.19 um 10:32:18 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 04.03.19 11:48

Hallo!

Es gibt keine "Variationen" von VB
Diese Programmiersprache beruht auf dem Net-Framework.
Diese Grundlage wird stets durch neue Konstrukte weiterentwickelt
und das heißt: erweitert. Die alten Versionen (ab 2.0) behalten
aber ihre Gültigkeit.
Derzeit ist das Framework 4.7.1 aktuell.

Die VB-Versionen (z.B. 2008, 2010, 2015, 2017) ermöglichen
jeweils die Nutzung der neueren Framework-Angebote.
Allerdings bin ich mit der aktuellen Entwicklungsumgebung
nicht besonders glücklich und empfehle deshalb für Anfänger
eher VB 2010 - Framework 4.0.

Allerdings:
Warum willst Du von VB6 umsteigen?

Du fängst mit dem Lernen nahezu von vorne an, wenn Du in
das Net-Framework wechselst.
Wenn Du nicht bereit bist, Dich ganz neu einzuarbeiten,
macht der Umstieg vielleicht keinen Sinn.
Du kannst dann nicht vom Framework profitieren.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: anfaenger_michael
Datum: 04.03.19 13:08

Hallo Manfred,

danke für die Antwort.

Ich bin leider nur ein Hobby-"Programmierer", und somit nicht so tief im Thema.
Wollte mich nur Schlau machen was es zu VB6 als Alternative gibt, falls ich VB6 unter
Windows 10 nicht zum laufen bekomme. Habe ehrlich gesagt etwas Schiss davor. Im Internet
ließt man ja wahre Horrorgeschichten.
So bin ich auf diesen Gedankengang gekommen.



Gruß
Michael Kühn
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 05.03.19 06:55

Horror gibt es, wenn man mit VB.Net einfach loslegt
ohne sich zuvor einen Überblick über den Aufbau des
Net-Framework verschafft zu haben.

Man muß sich zunächst über die Klassen und Strukturen, die
man in der Anwendung verwenden möchte, genau informieren.
Die Lektüre der VB-Dokumentation reicht oft nicht aus.
Es fehlen meist Angaben dazu, wie die Klassen miteinander
"zusammenarbeiten".
Die Code-Beispiele demonstrieren oft nur einen trivialen Fall
- oder sie fehlen völlig.
Das Durcharbeiten eines einführenden Lehrbuches mit
Anwendungsbeispielen ist zweckmäßig


Das Umstellen von VB6-Programmen auf VB.Net setzt voraus,
daß man in beiden Programmiersprachen gute Kenntnisse besitzt.
Die Tücke steckt im DETAIL; vieles kann man nicht direkt
umstellen oder es gibt im Framework Klassen, die den
VB6-Code ersetzen können.
Man muß sich stets darüber im Klaren sein, daß das "Fundament"
von VB.Net völig anders ist, als bei VB6 - d.h. der gleiche
oder ähnliche Code führt nich selten zu einer anderen Ausführung
und zu unterschiedlichen Resultaten.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: anfaenger_michael
Datum: 05.03.19 08:12

Hallo Manfred,

Deine Argumente sind richtig. Ich habe auch, ehrlich gesagt, keine Lust auf diesen Umstieg.
Ich mit meinen geringen Kenntnissen in der Programmierung will mir das auch nicht antun!
Will mich auch nicht mit Klassen beschäftigen. Es geht mir eigentlich um die
Installation VB6 auf Windows 10. Hat hier jemand schon Erfahrung damit ?
Läuft VB6 unter Windows 10 64 Bit ? Im Netz gibt es hierzu ja verschieden Beiträge die, so scheint mir, unterschiedliche Ergebnisse liefern.


Danke.


Gruß
Michael
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 05.03.19 10:00

Du mußt beachten, daß in VB6 geschriebene Anwendungen
zumeist stark auf der ActiveX-Technologie beruhen.

Prinzipiell sind VB6-Anwendungen unter Windows 10
lauffähig - auch bei den 64-Bit-Versionen des Betriebssystems.
Ob allerdings auch alle eingebauten (Drittanbieter-)
Komponenten einer VB6-Anwendung noch (wie erwartet)
funktionieren, ist in jedem Einzelfall zu prüfen.

Einige Probleme kann es mit der Verwendung der
VB6-Entwicklungsumgebung geben.
Sie muß unter "Administrator-Rechten" installiert werden
und einige eventuell benötigte Komponenten sind "von Hand"
zu registrieren.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: anfaenger_michael
Datum: 05.03.19 11:49

Hallo,

es hat mich ja nun doch unter "den Fingern gejuckt".
Ich habe mir <Visual Basic 2010 Express> installiert.
Macht eigentlich einen guten Eindruck auf mich.
Ich denke auch für meine Zwecke wird es wohl auch ausreichend sein.
Hat jemand eine Ahnung, wo es hierzu Anleitungen, Tutorials usw. gibt ?
Für mich wäre vor allem der Zugriff auf DAO Datenbank wichtig.


Danke.




Gruß
Michael
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 05.03.19 12:33

Damit fängt es an ...
Wieso willst Du auf VB 2010 umsteigen und dann doch wieder
die alte Zugriffstechnologie verwenden.

Möglich ist das ...
https://www.mssqltips.com/sqlservertip/2129/data-access-object-dao-and-visual-basicnet-to-create-an-access-database-interrogation-tool/

https://www.codeproject.com/Tips/808747/Csharp-VB-NET-Cplusplus-CLI-Read-and-write-MS-Acce

Verwende besser die Jet-Treiber und den OleDb-Zugriff.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: anfaenger_michael
Datum: 05.03.19 12:50

Hallo Manfred,

ich verstehe Dich mehr als Gut.

Hier einiges zum Hintergrund...
Vor einigen Jahren habe ich mit VB6 ein Tool geschrieben, mit dem ich unsere Aufträge verwalte.
Die Aufträge werden über eine Tool in eine Datenbank gestellt. Mit dem Tool arbeiten bis zu
bis zu 220 Anwender, und es läuft Stabil.
Jeder unserer Mitarbeiter zieht sich aus der Datenbank seine Arbeitsaufträge. Arbeitet sie dann ab, hinterlegt seine Dokumente und stellt danach den ganzen Auftrag in eine DAO-Datenbank.
Soviel zum Hintergrund. Einmal ehrlich... ich arbeite daran bereits seit 2007, und habe das Tool ständig erweitert und verbessert. Es besteht eigentlich "nur" aus DAO-Zugriffen, TextBoxen, Listviews usw. !
Wir werden wohl in absehbarer Zeit auf Windows 10 umstellen. Wenn VB6 unter Windows 10 nicht läuft, ich also mein Tool dort nicht weiter bearbeiten kann habe ich ein Problem. Und dem will ich vorarbeiten. Frei nach dem Sprichwort "Wer früh genug losgeht, muss am Ende nicht laufen"
Natürlich werde ich vieles, was VB2010 betrifft, nacharbeiten müssen.
Das Hängen am alten Syntax stört mich dabei jedoch nicht. Abgesehen davon das ich eigentlich alles nochmal machen muss.
In ein paar Jahren werde ich in Rente gehen. Du verstehst das ich keine Lust mehr habe noch
neue Programmiersprachen zu erlernen



Gruß
Michael
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 05.03.19 13:00

Du solltest eine klare Entscheidung treffen.

Teste doch, ob Dein Programm unter Windows 10 lauffähig ist?
Falls ja, ist eine Umstellung unter den genannten Rahmenbedingungen
nicht erforderlich.
Falls nein, kann es sein, daß auch die DAO-Zugriffe nicht mehr
funktionieren.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Brakelmann
Datum: 06.03.19 19:59

Moin Michael,

ich stand lange auch vor dem Problem. Seit ewigen Zeiten habe ich meine Programme in VB6 geschrieben.
Sogar unter Window 10 64 lief alles mehr oder weniger reibungslos. Trotzdem habe ich mich vor ca. 4 Wochen dazu durchgerungen mit Visual Studio 2017 anzufangen. Die neuen Projekte sollten vielleicht auch noch in 10 Jahren funktionieren. Ob dann immer noch VB6 unterstützt wird? Irgendwann ist wohl auch damit Schluß.
Nachdem ich nun viele Abende damit zugebracht habe, mich in die Materie einzuarbeiten, muss ich sagen, dass die Lernkurve recht steil ist. Vieles findet man zwar schnell wieder und einfache Programme sind schnell geschrieben und verstanden.
Bei mir geht es aber fast immer um Datenbanken. Und da fängt dann der Kopf an zu rauchen... Zumindest bei mir. Enorm geholfen hat mir die BindingSource. Hier habe ich die Befehle wiedergefunden, die von dem guten alten Recordset kenne, wie z.B MoveForward etc. Ein Grid zu füllen ist auch nicht da große Problem. Ich habe es nicht bereut umzustegen und freue mich inzwischen jeden Tag auf neue Entdeckungen!

Gruß
Jürgen
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 07.03.19 06:14

Hallo!

VB6 Programme laufen auch unter Windows 10.
Es ist deshalb zu erwarten, daß sie das auch noch in einigen
Jahren tun werden - "Gefahr" droht eher von spezifischen
ActiveX-Komponenten, die nicht mehr gepflegt werden und
eventuell irgendwann Sicherheitsprobleme verursachen können.
Und "Ungemach" droht im professionellen Einsatz von neuen
gesetzlichen Regelungen, die bei schutzwürdigen Daten die
Verwendung aktueller Verarbeitungs-Technologien fordern.

Wenn man von VB6 kommend mit VB.Net anfängt, sollte man
nicht den Fehler machen, Sachen "wiederfinden" zu wollen.
Das klappt bei einfachen Programmen - ansonsten ist es eine
Sackgasse.

Wenn Du die Bindingsource als "Ersatz" für das Recordset betrachtest,
hast Du vermutlich noch nicht verstanden, wie Datenbank-Interaktion
in VB.Net tatsächlich läuft.
Dort holst Du z.B. über den Select-Befehl benötigte Datensätze in
ein Dataset. Das ist eine In-memory-DB, die Vollzugriff bietet.
Die Datenbank selbst ist während der Bearbeitung "abgekoppelt" und
wird nur durch Fill- und Update-Methoden einbezogen.

Benutzerdialoge laufen über gebundene Controls, Datenmodifikation
per Code wird direkt in der internen Datenquelle ausgeführt.
Die Bindingsource regelt den Datenzugriff für die Controls.
Per Code kann sie zum Filtern oder Sortieren genutzt werden.
Man verwendet dafür meist die komfortablere DataView-Klasse.
Wegen des Konzepts der "In-Memory-DB" gibt es keinen "Cursor"
für den Zugriff auf geladene Datensätze, sondern hierfür werden
Methoden der Datenklasse (z.B. Datatable) eingesetzt.

Ich kann nur empfehlen, VB6 komplett zu vergessen und ein einführendes
Lehrbuch zu VB.Net mit Beispielen durchzuarbeiten. Wer eine mehrwöchige
intensive Einarbeitung scheut, sollte auf VB.Net verzichten.
Nach Anfangserfolgen - auf der Grundlage von VB6-Kenntnissen - verstrickt
man sich sonst schnell in den Framework-Konzepten, deren Arbeitsweise man
wegen des fehlenden Wissens nicht versteht und die sich "unberechenbar"
zeigen. Der Kopf fängt an zu rauchen ....

Beitrag wurde zuletzt am 07.03.19 um 06:29:10 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Brakelmann
Datum: 07.03.19 15:10

Hallo Manfred,

vielen Dank für Deine ausführliche Erläuterung! Du beschreibst ziemlich genau die Probleme, die ich als Feierabendprogrammierer habe. Objektiv betrachtet würde es für mich eigentlich kein Sinn machen nochmal umzusteigen. Die letzten 15 Jahre bis zu Rente würde ich auch noch so hin bekommen. Aber ich habe auch einfach mal wieder Lust auf was Neues.

Gruß
Jürgen
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: anfaenger_michael
Datum: 08.03.19 10:47

Hallo Jürgen,

habe auch gerade etwas mit dem BindingSource "gespielt", und habe
einfach mal meine DAO-Datenbank (ca. 216 KB) mittels BindingSource in eine Form eingefügt.
Aber warum wird denn danach ewig etwas geladen ?



Gruß
Michael
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 08.03.19 14:00

Was ist eine "DAO-Datenbank"?
Handelt es sich um einen Remote-Zugriff?
Wie sieht das Select-Kommando aus?
Die Bindingsource hat mit dem Laden von
Daten nichts zu tun.
Lies erst mal eine Dokumentation, damit
Du weißt, was Du eigentlich tust.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: anfaenger_michael
Datum: 08.03.19 14:25

Hallo Manfred,

das hatte ich geahnt...
Dein Dämpfer kam zu Recht. Werde mich einlesen.


Gruß
Michael
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Benne
Datum: 20.05.19 15:27

Hallo zusammen,

das Thema ist doch immer wieder aktuell.

@Brakelmann:
Ich glaube, wir sind so etwa in der selben Situation.
Es wäre schön, wenn ich die Sache bis zur Rente aussitzen könnte, aber immer mehr kommen mir da Zweifel.

Seit ewigen Zeiten programmiere ich in VBA bzw. VB6
Die Programme sind klein und schnell. Auch glaube ich, dass mein Code vorzeigbar ist.
Ich arbeite viel in Klassen und nutze den SQL-Server als sichere Datenquelle.

Aber ...
Eigenständige Programme laufen nur mit VB6. Die Lösung mit MS-Access und VBA wird auch immer schwieriger, weil die externen ocx-Komponenten manchmal auch ziemlich bockig sind.

Ich habe mir jetzt mal VS2017 besorgt und mal reingeschaut.
Gerade vorher habe ich die Posts von Manfred gelesen und fühle mich bestätigt.
Es geht nicht !!!
VB.net hat mit dem VB6 nur noch 2 Buchstaben gemein.
Die Funktionsweise von Datenbankzugriffen ist komplett anders. Das muss man erst mal verstehen.

@Manfred:
Ist es vielleicht besser, gleich auf c# zu gehen, anstelle vb.net?
Durch die andere Sprache ist man eventuell nicht mehr in Gefahr, auf alte Gewohnheiten zurückzufallen.

Und die zweite Frage?
Welches gute Fachbuch kannst du empfehlen, um die Logik hinter dem Ganzen zu lernen?

Es ist ein harter Weg, das weiß ich.
Aber ich glaube, dass kein Weg daran vorbeiführt.
Aussitzen geht nicht.
Lust auf was Neues habe ich eigentlich nicht, aber ich muss meine Programme, die sich in der ganzen Firma etabliert haben, lauffähig halten.
Bei jedem großen Update oder OS-Wechsel das große Zittern zu bekomme, ist nicht erstrebenswert.

Grüße an alle Leidensgenossen

Bernd
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: EKrause
Datum: 21.05.19 08:32

In dem Thread, den ich hier vor kurzem eröffnet habe, stand ich vor genau dieser Herausforderung: VBA/VB6 -> VB.NET.


Nun bin ich auch berufsmäßig Programmierer und konnte bislang diese Problematik mehr oder weniger erfolgreich umgehen, das klappt bei meinem aktuellen Projekt so nicht mehr.

Und in der Tat: Was Manfred X zu dem Ganzen geschrieben hat, trifft (leider) den Kern.
Ich halte mich im Umgang mit VBA (hauptsächlich unter MS Access ab der Version 2.0) für professionell, aber die ersten Schritte mit VB.NET (unter Visual Studio Express Community 2017) haben mich vom Hocker gehauen, tatsächlich hatte auch ich das Gefühl, VB völlig neu lernen zu müssen.

Ich habe mittlerweile 3 recht gute Bücher, und ich schaue recht oft auch unter https://docs.microsoft.com/de-de/ nach...sie haben allesamt eines miteinander gemein: Die Erklärungen mögen hilfreich sein, aber vor allem bei der vorstehend genannten MS-Webseite muss man gut fortgeschrittene Kenntnisse in der Programmierung mitbringen, um die Code-Beispiele verstehen zu können.

Abschließend: Ich verfüge über Visual Studio 6, ich bin mir sehr sicher, dass das unter Win10 (64-Bit) laufen sollte...ob es sinnvoll ist, ist ne andere Sache
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 21.05.19 11:46

Hallo!

Zu diesem Thema kurz und bündig etwas zu sagen, daß für alle Interessenten gilt, ist schwierig.

Folgende Fragen wären zu klären:

Sollen einfache Tools oder komplexe Programme erstellt werden?

Werden die grundlegenden Strategien des Objektorientierten Programmierens einigermaßen verstanden
(Klassen, Vererbung, Gliederung von Aufgaben, Ereignis-Management)?

Falls Programme umgestellt werden: Wie umfangreich sind die VB6-Programme?
Wie stark greifen sie auf VB6-"Tricks" (Effizienz etc.) zurück, die es in VB.Net nicht mehr gibt (bzw. nicht benötigt werden)?
Wie groß ist das Interesse an funktioneller Weiterentwicklung in der Zukunft?

Hat man genügend Zeit zur Verfügung, um sich einige Wochen oder sogar Monate gründlich in das Net-Framework (Konzepte) einzuarbeiten, ehe man "produktiv" loslegt?

Sind die mannigfaltigen Klassen des Net-Framework (oder von Drittanbietern) als produktive
Hilfsmittel einzustufen, die das Erstellen und Testen von Programmen beschleunigen und deshalb
die erforderliche Einarbeitungszeit rechtfertigen?
Oder sind spezielle Programme erstellt oder zu erstellen, deren Komponenten nahezu komplett neu
entwickelt worden sind?


C# bietet im Vergleich zu VB.Net einige wenige Vorteile, ist aber in mancher Hinsicht etwas weniger "bequem" in der Anwendung -
"intern" (MSIL) arbeiten diese beiden Sprachen zu über 95% identisch.

Es ist oft möglich, in VB6 entwickelte Bibliotheken auch in VB.Net-Anwendungen zu nutzen (ActiveX / COM).
Man muß deshalb eventuell nicht den gesamten VB6-Code einer Anwendung umstellen, wenn man zu VB.Net migriert.
Allerdings bleibt man dann auf 32-Bit beschränkt, was meist kein spürbarer Nachteil ist.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Benne
Datum: 21.05.19 12:46

Hallo Manfred,

dein Post ist wie immer recht ausführlich.

Viele berechtigte Fragen ...

Die Praxis stellt sich so dar, dass es eine Handvoll größerer Programme gibt, die über einen Zeitraum von 10 Jahren entwickelt, verbessert, vergrößert und immer wieder angepasst worden sind.

Diese Programme kann man wohl nicht "umstellen", ohne sich ein Jahr zurückzuziehen.
Außerdem bin ich nicht als Programmierer eingestellt, sondern als Leiter einer Fachabteilung. Die Programmerstellung mache ich nebenher.
Für viele Fachbereiche gibt es keine Standardsoftware. Bevor man dann "wie früher" arbeitet, macht man sich eben selbst was.
Und sowas entwickelt sich dann weiter und wird irgendwann unverzichtbar.

Ich denke, dass diese Geschichte sich in vielen Firmen gleich oder ähnlich abspielt.

Mein Vorhaben sieht so aus, dass ich mit kleinen Nebenanwendungen erst mal in das Thema reinkomme.
Sobald das Verständnis da ist und man nicht nach jeder 2. Zeile einen Fehler bekommt, kann man größere Sachen anpacken.
Und irgendwann kann ich dann vielleicht die großen Brocken auf die neue Plattform versetzen.

Das Verständnis für Klassen, Objekte, Vererbung etc. ist vorhanden.
Soweit es in VB / VBA ging, habe ich es auch eingesetzt.

Ich habe jetzt mal das Buch Datenbank-Programmierung mit Visual C# 2012 gekauft.
Es wurde mir empfohlen, weil es Grundlagen und Methoden gut erklären soll.

Da ich auch hin und wieder mit Javascript was machen muss, war C# ebenfalls in der Rangliste oben.

Vielen Dank für deine Antworten. In den nächsten Wochen werde ich mich mal in das Thema vertiefen.

Viele Grüße

Bernd
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 21.05.19 14:37

Hallo!

Die Strategie, sich mit "kleinen Projekten" einzuarbeiten muß
begleitet werden mit einer Einarbeitung in die Grundkonzepte,
die im Framework realisiert worden sind (Doppelstrategie,
Hintergrundwissen).

Das gilt vor allem für Datenbankzugriffe und die Nutzung von
Datenbindung bei Controls. Hier ist auch das Entity Framework
eventuell interessant (Abbildung der Datenbank als Objektmodell).

Es gibt aber weitere Gesichtspunkte, z.B. die Nutzung der
Auflistungen (Enumerables), für deren Bearbeitung diverse
generische Klassen, Schnittstellen und Spracherweiterungen
(LINQ, Lambda-Funktionen) geboten werden. Da sollte man
einen Blick darauf werfen - obwohl das nicht so VB-Like ist.

Ein interessantes Thema ist die relativ einfache Nutzbarkeit von
Multitaskung/Multithreading (z.B. Threadpool), durch das die
Benutzeroberfläche entlastet und die Effizienz u.U. deutlich
gesteigert werden kann.

Interessant ist auch das Konzept der Serialisierung von Datenklassen,
das es erlaubt, komplexe Datenstrukturen und Modelle, die sich nicht für
relationale Datenbanken eignen, effizient und kontrolliert zu speichern.

Es lohnt sich immer, nach Net-Bibliotheken von Drittanbietern Ausschau
zu halten, ehe man selbst "loslegt". Es gibt Lösungen für fast jede
Aufgabenstellung. Man muß Zeit und Kosten abwägen, insbesondere, wenn man
nur "nebenbei" programmiert.

Beitrag wurde zuletzt am 21.05.19 um 14:41:24 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Archilleus
Datum: 24.05.19 18:24

Also ich komme auch aus der VBA/VB6-Ecke und bin Hobbyprogrammierer.
Solange es "nur" um normale Anwendungen geht, komme ich ganz gut zurecht. Aber sobald eine Datenbank im Spiel ist, bricht bei mir der kalte Schweiß aus.

Ich habe mittlerweile eine Menge Codebeispiele, an den mich langhangeln kann und alles läuft stabil. Allerdings habe ich auch keine 200 Teilnehmer.

VBNet ist in Puncto Datenbanken (Access) etwas ganze anderes als das gute alte DAO. Was in DAO mit wenig Code erledigt ist, muss man in VBNet ganze Programmromane schreiben.

Alleine die Objekte die es hierzu gibt, erschlagen ein (Rows etc.). Und wie Manfred_X schon schrieb, ich hatte mir schon eine blutige Hand geholt und war kurz vorm heulen, weil ich es einfach nicht begriffen hatte, dass sämtliche geänderten Werte sich nur im Arbeitsspeicher befinden und nicht automatisch zurückgeschrieben. Alles mus buchstäblich selbst erledigt werden.

Selbst wenn man vermeintlich mit Rows.Add, Rows.Edit usw. arbeitet, ist das nur virtuell.

Aber aufgrund meiner mittlerweile doch umfangreichen Beispiele, komme ich ganz zurecht. Wobei ich mir angewöhnt habe, die Datenbank immer mit echten SQL-Updatebefehlen zu bearbeiten. Aber alleine das ist schon eine ganz andere Kategorie.

Insgesamt bin ich aber mit VBNet echt zufrieden. Ich kann hier Dinge tun, die ich früher nur unter größten Mühen und auch mit externen Controls (z. B. S-Grid 2.0 von Accelerator) machen konnte. Jetzt ist das alles an Bord.

Gruß Archilleus
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: W. Wolf
Datum: 31.05.19 20:53

EKrause schrieb:
Zitat:


Nun bin ich auch berufsmäßig Programmierer und konnte bislang
diese Problematik mehr oder weniger erfolgreich umgehen, das
klappt bei meinem aktuellen Projekt so nicht mehr.


Darf ich fragen, warum nicht? Ich bringe auch 25+ Jahre VB mit und pfege eine 250K LOC VB-Projekt (ERP) seit vielen Jahren. Ich habe in der gesamten aktuell verfügbaren Windows-Welt keine Probleme. Hätte echt gerne gewusst, was nicht mehr funktioniert.

Schönen Gruß
W. Wolf
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: EKrause
Datum: 01.06.19 19:08

Zitat:

EKrause schrieb:

Nun bin ich auch berufsmäßig Programmierer und konnte bislang
diese Problematik mehr oder weniger erfolgreich umgehen, das
klappt bei meinem aktuellen Projekt so nicht mehr.


Meine Herausforderung ist derzeit ein komfortables Tool, um Webs auf tote Links zu untersuchen, damit geht's schon los. So etwas gibt es zwar, aber entweder Freeware, dann unkomfortabel, oder Pay-Ware, und die ist sauteuer, 50$ monatlich oder so! Da haben wir garnicht erst nachgeschaut, was die (vielleicht) alles kann.

Ich habe zwar schon kleine Tools für mich persönlich in VB.NET geschrieben (automatisches Umbenennen von Dateien z. B.), die aber bislang noch vergleichsweise unkompliziert waren und sich, wie geschrieben, mit ein paar Tricks so umgehen ließen, dass ich von VB.Net nicht viel "gemerkt" habe.

Den Löwenanteil meiner Erfahrungen habe ich mit VBA unter MS Access gesammelt, wobei auch Verbindungen z. B. zu MS Excel (Daten aus einer MS Access-Tabelle in Excel als Diagramm darstellen) enthalten sind...in VBA gibt es eigentlich kaum noch etwas, was mich überraschen könnte.

Für obige Herausforderung benötige ich nun weder Datenbanken noch Tabellenkalkulationen o. ä., dafür aber intensiven Zugang zu Funktionen, Methoden, Eigenschaften - wie auch immer -, mit denen ich zu Webseiten navigieren und deren OuterHtml durchsuchen und auswerten kann, da kommt also nur VB.NET in Frage.

Das ist für mich fachlich ein völlig neues Thema (normalerweise ist meine Domäne Informationsgewinnung mit relationalen Datenbanken), und hier habe ich inzwischen derart viel neues kennenlernen und mir aneignen müssen, dass ich mittlerweile das Gefühl habe, Visual Basic fast neu gelernt zu haben.
Schwerer wäre mir wohl nur das Erlernen einer Sprache (C#, Java o. ä.) gefallen, mit der ich noch überhaupt keine Erfahrungen gemacht habe.

Beitrag wurde zuletzt am 01.06.19 um 19:10:59 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: W. Wolf
Datum: 03.06.19 15:42

EKrause schrieb:
Zitat:


....mit denen ich zu Webseiten navigieren und deren OuterHtml durchsuchen und auswerten kann, da kommt also nur VB.NET in Frage.


Also, um das DOM einer Webseite zu analysieren und ändern verwende ich die MS-HTML Object Library unter VB6 (mshtml.tlb). Dort gibt es das HTMLDocument-Object welches Methoden zum Zugriff auf alle untergeordneten DOM-Objekte liefert - auch die Links. Einem Link sieht man ja nicht an ob er gültig ist oder nicht (abgesehen von Syntax-Fehlern), man muss dorthin navigieren. Das kann man mit einem beliebigen TCP-Client bewerkstelligen, dafür gibt es Beispielcode im Netz. Mit dem WinSock sollte das auch gehen nehme ich an (weiß es nicht so genau, weil ich das so nicht verwende).

Wenn du in VBA fit bist, solltest du z.B. mit dieser Seite gut klar kommen:
https://codingislove.com/parse-html-in-excel-vba/

Gruß
W. Wolf
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: EKrause
Datum: 03.06.19 20:49

Erstmal vielen Dank für den Tip.

Nur, das ist genau das, was ich eben nicht wollte/will, nämlich irgendeine Umgebung (wie Excel oder Access) mitschleppen.
Die Anforderung kommt aus dem Forum einer durchaus bekannten Webseite, wo ich einer von 3 Moderatoren bin, und das Tool, was ich baue bzw. bauen soll, soll Anwendungsplattform unabhängig sein, also autark, ausschl. Windows als Basis.

Natürlich verfüge ich über Visual-Studio 6, gar eine Developer-Version...aber es hat seine Grenzen, und VB6 ist nun wirklich nicht mehr so richtig jung, ich arbeite daher auch mit Visual Studio 2017 Community.

Die fachliche Anforderung ist neu für mich, wie ich schon schrieb. Da ich nun überhaupt nichts dagegen habe, (innerhalb von VB) dazu zu lernen, kommt mir VB.Net gerade recht...es ist nur eben neu, auch für Leute, die sich im Vorfeld hauptsächlich mit VBA/VB6 beschäftigt haben.

So nebenbei: Die Navigation läuft längst reibungslos, im Moment muss ich geregelt bekommen, wirklich alle Links, die geprüft werden müssen, "einzusammeln", und das ab der vom Benutzer eingegebenen Web-Adresse, zzgl. der mehrere Stufen nach unten reichenden "Folge-" Links, die ihrerseits durchaus Links enthalten können, die entweder schon "notiert" oder bereits gecheckt wurden...für diese Herausforderung nutze ich gerade erfolgreich die von Manfred X genannte Lösung mit generischen Listen.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: W. Wolf
Datum: 04.06.19 07:29

EKrause schrieb:
Zitat:

Erstmal vielen Dank für den Tip.

Nur, das ist genau das, was ich eben nicht wollte/will,
nämlich irgendeine Umgebung (wie Excel oder Access)
mitschleppen.


Hallo,

so war das auch nicht gemeint. Ich habe den Beispiel-Link nur deshalb angehängt, weil du sagtest, dass du fit in VBA bist. Aus VBA-Code lässt sich i.d.R. gut VB-Code ableiten und so in eine eigenständige Exe überführen.

Generell wollte ich damit nur sagen, dass ich funktional mit VB (noch) keine Einschränkungen habe, bis auf die Tatsache dass Microsoft stillschweigend diese Abschalt-Drohkulisse aufrecht hält. Wenn ich es objektiv betrachte, verhält sich Microsoft eigentlich gar nicht mal so bedrohlich, immerhin haben sie die VB-Unterstützung in jede neue Windows-Version bejaht. Letzten Endes sind es die vielen Möchte-Gern-Alles-Besser-Wisser, die seit nunmehr 20 Jahren den Untergang von VB herbei reden. Zwischenzeitlich habe ich einige gute und vor allem performante Anwendungen entwickelt, die keinen Vergleich mit .Net scheuen müssen.

Deshalb bin ich hier in diese Diskussion reingegrätscht. Ich wolle wissen, was du mit VB technisch nicht umsetzen kannst. Es gibt einige gute Gründe um auf VB.Net umzusteigen, das kostet aber Zeit und viel Geduld. Technologisch hatte ich bisher noch keinen Bedarf.

Schönen Gruß
W. Wolf

Schönen Gruß
W. Wolf
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: EKrause
Datum: 04.06.19 20:11

___________________________________________
W. Wolf schrieb:
Deshalb bin ich hier in diese Diskussion reingegrätscht. Ich
wolle wissen, was du mit VB technisch nicht umsetzen kannst.
Es gibt einige gute Gründe um auf VB.Net umzusteigen, das
kostet aber Zeit und viel Geduld. Technologisch hatte ich
bisher noch keinen Bedarf.

Schönen Gruß
W. Wolf
____________________________________________
Hallo,

och, ich habe mir eigentlich nie wirklich Sorgen um VBA (VB6) gemacht, nachdem letztere ja weiterhin auch im aktuellen Office-Umfeld genutzt/gepflegt werden, und bei eventuellen Aufgaben z. B. innerhalb von MS Access werde ich selbstverständlich weiterhin das dafür gedachte VBA einsetzen.

Ich sehe es ähnlich wie Du: Ich komme eigentlich aus dem IBM-Mainframe-Umfeld, meine Domäne dort ist COBOL (mit SQL in DB2-Umgebungen), und auch COBOL wird regelmäßig totgesagt, erlebt aber mittlerweile seinen 5. oder 6. Frühling, Ende sehr offen.
Es scheint so, dass beides - wenn auch auf völlig unterschiedlichen Plattformen eingesetzt - im Vergleich zur "Konkurrenz" ausgesprochen stabil und leicht zu handhaben sind...die Antworten auf Ersatz durch angeblich sicherere, modernere, größere, höhere Entwicklungstoolts, Sprachen geben die Benutzer, und die scheinen eindeutig

Es ist schon richtig: Mit dem Einsatz von VB.Net lerne ich gerade etwas neues, fast jeden Tag, und das kann nur gut sein.
Glücklicherweise stehe ich nicht unter Zeitdruck; ich hatte schon mit dem Einsatz von VB6 auch für die aktuelle Aufgabe geliebäugelt, habe aber selbst für einfachste Komponenten-, Code-Anregungs-Suche per Google unglaublich wenige, vor allem aber alte Antworten erhalten, dass ich für VB.Net nicht lange überlegen musste.

Beitrag wurde zuletzt am 04.06.19 um 20:18:13 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: W. Wolf
Datum: 05.06.19 07:55

Dein erster Thread hat halt suggeriert, dass irgendwas mit VB6 nicht realisierbar wäre. Ist schon klar, dass das Netz inzwischen mehr .net Beispiele bringt als VB6 Beispiele. Aber das meiste findet sich dann doch. Man muss halt auch mal über den Tellerrand schauen und gezielt nach Windows-APIs suchen und dann C-Code nach VB übersetzen. Auch Seiten wie diese hier (ich kenne noch ein paar andere) bieten einen riesigen Fundus an sehr guten VB-Code.

Abschließend zu deiner letzten Bemerkung aus dem ersten Thread:

Zitat:

Ich verfüge über Visual Studio 6, ich bin mir sehr sicher, dass das unter Win10 (64-Bit) laufen sollte...ob es sinnvoll ist, ist ne andere Sache


Die VB6-IDE ist unter W10 gut verwendbar. Bei der Installation und Konfiguration müssen ein paar Sachen berücksichtigt werden (das findet sich auch alles mehrfach im Internet), danach funktioniert alles (fast) so gut wie unter W7. Dieses kleine "fast" ist ein bisschen ärgerlich, betrifft aber nur den Designer und ist tolerierbar.

Schönen Gruß
W. Wolf
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 05.06.19 08:11

Hallo!

Auch hier der Hinweis:
Die Datenschutz-Grundverordnung verlangt bei Verarbeitung personenbezogener Daten
die Nutzung des aktuellen technischen Stands der eingesetzten Hard- und Software-
Komponenten. Meiner Ansicht nach schließt das VB6-Programme aus.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: W. Wolf
Datum: 06.06.19 08:20

Manfred X schrieb:
Zitat:

Hallo!

Auch hier der Hinweis:
Die Datenschutz-Grundverordnung verlangt bei Verarbeitung
personenbezogener Daten
die Nutzung des aktuellen technischen Stands der eingesetzten
Hard- und Software-
Komponenten. Meiner Ansicht nach schließt das VB6-Programme
aus.


Um hier keine OT Diskussion anzufangen: Habt ihr dieses Thema schon in einem anderen Thread vertieft? Dieses kurze Statement von dir, kann ich gar nicht angemessen kommentieren ohne ausfallende Adjektive zu bemühen. Also halte ich mich lieber zurück.

Schönen Gruß
W. Wolf
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: W. Wolf
Datum: 02.07.19 08:01

Manfred X schrieb:
Zitat:


...
Allerdings bleibt man dann auf 32-Bit beschränkt, was meist
kein spürbarer Nachteil ist.


Ich würde sagen, dass in 90-99% der Anwendungen gar nichts spürbar ist. 64 Bit bedeuten nur 64 Bit große Adressregister, daraus ergibt sich im Wesentlichen ein vergrößerter Adressbereich. Ein Adressbereich von mehr als 4 GByte werden nicht sehr viele Programme benötigen.

Was für datenintensive Programme ein Vorteil ist, führt bei kleinen Programmen zu Nachteilen hinsichtlich Speicherverbrauch und Geschwindigkeit führen. Alle Adresswerte sind mit 64 Bit doppelt so breit, sprich jeder einzelner Boolean (mit den Werten True und False) verbraucht diese 64 Bit. Dieser Mehrbedarf verbraucht daher im RAM (nicht so schlimm, davon haben wir mitterweile genug) und in den Caches (oh, oh...) doppelt so viel Platz. Damit wird ggf. die Ausführungsgeschwindigkeit der Programme herabgesetzt. Ein kleines bis mittelgroßes 64 Bit Programm kann subjektiv eher träger sein als das Gleiche in 32 Bit.

Ich entwickle seit 25 Jahren Programme, i.d.R. im Verbund mit Datenbanken. Meine VB6 Programme belegen nie mehr als 50-100MB RAM. Ich kann sehr gut ohne 64 Bit...

Schönen Gruß
W. Wolf
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Umstieg VB6 auf vb.Net oder anderes VB ? 
Autor: Manfred X
Datum: 02.07.19 09:30

Hallo!

In Zusammenhang mit der Frage von 32Bit-/64Bit-Anwendung spielt bei einer
objektorientierten Programmiersprache die Dynamik der Speicherverwaltung
eine zentrale Rolle.
Zu einem Fehlschlag bei der Speicheranforderung für ein Objekt kann es im
32-Bit-Raum kommen, wegen Fragmentierung des virtuellen Addressraums, wenn eine
Anwendung häufig eine große Zahl von kurzlebigen Objekten erstellt, die laufend
auch wieder freigegeben werden müssen.
Entscheidend ist dabei die Leistungsfähigkeit und die Arbeitsweise des "Garbage Collectors",
im Net-Framework, der laufend weiter entwickelt wird:
https://docs.microsoft.com/de-de/dotnet/standard/garbage-collection/fundamentals

Ob eine Programm "datenintensiv" ist (=einen großen Speicherbereich für geladene Daten
benötigt) bleibt dabei relativ bedeutungslos, da solche Daten-Objekte (langlebig) in
einem separaten Speicherbereich verwaltet werden.

Was der Verweis auf VB6 hier soll, verstehe ich nicht.
Diese veraltete Entwicklungsumgebung bietet keine annähernd vergleichbare Effizienz
und Sicherheit der Speichernutzung - insbesondere im Hinblick auf die Objektverwaltung.

Beitrag wurde zuletzt am 02.07.19 um 09:35:28 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel