Sonntag, 10. Januar 2010

VFP9 komplett installieren

New! English translation at http://woody-prolib.blogspot.com/2018/12/how-to.html!


(Edit am 05.06.2011: Download-Links aktualisiert)
(Edit am 12.06.2015: nochmals Download-Links aktualisiert)
(Edit am 10.06.2016: Link für ActiveXControls zugefügt)
(Edit am 17.11.2017: Links für VFPX von Codeplex nach Github geändert)
(Edit am 16.06.2021: Alle Downloadlinks von MS landen im Nirwana; Alternativen im englischen Artikel eingebaut)

Nachdem sich in letzter Zeit die Anfragen darüber in den Foren doch häufen, hier mal ne Liste aller notwendigen Schritte, um ein VFP9 von anno 2004 auf einem jungfräulichen Windows einzurichten. Der Umstieg auf Windows 10 ist dazu meist der übliche Anlass...  

Als Erstes sollte natürlich Windows selbst komplett up2date sein, d.h. Die Windows Update-Funktionalität so oft durchlaufen lassen, bis nix mehr gemeldet wird. Natürlich sollte da die Einstellung auf "Für Windows und andere Produkte von MS" gewählt sein, damit auch Office & Co geupdated sind. Dabei dann auch bitte die optionalen Updates anschaun. Ich blende hier immer die ganzen weiteren Sprach-Updates aus (alle markieren und dann RechteMaus druff), als auch den üblen Live Kram....

Danach gibt's den Shortcut für die ganz Eiligen: VFP kann ruckzuck vom alten auf den neuen Rechner gebracht werden, indem man einfach den gesamten Entwicklungs-Ordner vom Altrechner rüberkopiert, und dann VFP mit dem Zusatz "/REGSERVER" einmalig mit Adminrechten (!) anstartet. Das geht am Einfachsten über den Punkt "EingabeAufforderung (Administrator)  im "Rechte-Maus-Auf -Windows Start" Menü ; dann ins VFP Verzwichnis wechseln und  VFP9.EXE /REGSERVER  eintippen und starten (Wenn eine Meldung kommt "Zugriff auf Systemregistrierung verweigert", dann war's ohne Adminrechte, und man darf nochmal).   Diese Option schreibt alle Dateiverknüpfungen neu, sodaß ein Doppelclick auf zb eine DBF das VFP anstartet und die Tabelle im Browse anzeigt. 


Nebenbei sei noch auf ein weiteres Tool zum Aufräumen bzw Zurücksetzen von VFP-Einstellungen hingewiesen:  DO HOME() + "VFPCLEAN.APP" überprüft die VFP-internen Mappings im Optionsdialog (Pfade zu Genmenu, ReportEngines usw) und korrigiert diese.

Je nach schon installierten anderen Programmen kann es sein, dass so ein rüberkopiertes VFP dann schon klaglos anläuft, meist aber fehlen dann zB die MSXML2 Bibliotheken oder die (damals aktuellen, aber inzwischen uralten) OCXe für Treeview, Listview etc, die im aktuellen Windows nicht mehr standardmäßig vorhanden sind, die aber VFP zb zum Anzeigen der TaskPane oder IntellisenseManagers etc verwendet.  Zu denen kommen wir dann gleich noch, aber der Reihe nach....

Also: Der einfachste Weg, einen beliebigen Rechner VFP-tauglich zu machen, ist einfach meinen Runtime-Installer einmal drüber zu bügeln: Unter https://github.com/VFPX/VFPRuntimeInstallers 
findet man für alle gängigen VFP Versionen die entsprechenden Installer. Für VFP9 wär das also die VFP9SP2RT.EXE und damit ist dann auch der XML2 Stack als auch ODBC und OLEDB vorhanden.

Nebenbei bemerkt: Dieses Rüberkopieren führe ich regelmässig mehrfach im Jahr aus, da ich sehr oft mal ne neue Platte einrichte, sei es um neue Windows-Versionen zu testen, oder um nen total versauten Rechner wieder auf Vordermann zu bringen. Ich habe bei mir alle FoxPro-Versionen (angefangen von FoxBase+ über FoxPro1, 2, 2.6 für DOS und alle Windows Versionen) parallel und lauffähig installiert in einem Ordner D:\Develop\ abgelegt. Im Hauptverzeichnis gibt's nen Batch, der dann dieses /Regserver in der richtigen Reihenfolge (Ältere Versionen zuerst) ausführt, sodass immer die aktuellste Vesion als Letzte registriert wird. (Aufpassen: das /RegServer tut erst ab VFP6, bei VFP5 war es noch "-R"). VFP3 läuft ohne Tricks nicht mehr auf heutigen Rechnern, da wir alle zuviel RAM haben (VFP3 kann standardmässig mit max 512MB RAM umgehen, der SP1 hatte das dann auf 738MB erweitert; für die damalige Zeit ein unereichbarer Wert!) Ausweg in Win7: Im Virtuellen-XPMode ausführen, denn dieser VirtualPC ist standardmässig auf 256MB konfiguriert.

Aber zurück zum Thema... Neben diesem "Einfach Rüberkopieren" für faule Säcke ;) sollte natürlich auch eine saubere Neuinstallation möglich sein. Ab Windows 7  sind wir da mit zwei Problemen konfrontiert, die eigentlich nicht VFP spezifisch sind, sondern Schlampereien des verwendeten Installers sind. Man startet also ganz normal mit Einlegen der CD oder eines ISO-Abbildes. Achtung: nicht direkt die SETUP.exe ausführen, sondern die VFPSTART.HTA.

Nach Eingabe des Keys (der übrigens inzwischen weltweit gleich ist) kommt man dann zur Pfad-Auswahl. Eine Installation im "c:\Program Files\" Ordner ist aus diversen Gründen der Abteilung Schwachfug zuzuordnen (Entwicklungssysteme sind keine reinen "nur ausführbare" Endanwender-Programme) daher sollte man sie außerhalb dieses besonders überwachten und mit restriktiven Rechten versehenen Ordnerzweiges installieren (bei mir eben \Develop\). Dumm nur:

Man kann beim Installieren kein neues Verzeichnis visuell mehr auswählen, der Installer-Dialog bleibt leer. Abhilfe: Vorher das entsprechende Zielverzeichnis mit dem Explorer anlegen, und dann den Pfad im Installer einfach eintippen.

Aber der Installer installiert eben nicht alles Lebensnotwendige für VFP9. Nachdem das Setup in gerade mal ca 3 min alles installiert hat (Eine Wohltat gegenüber den mehreren Stunden einer Visual Studio Installation!), kommt man zurück zum Startbildschirm, der dann noch die Option für die Servicepacks anzeigt. Im Prinzip wird hier auf diese Seite verzweigt: 
http://msdn.microsoft.com/de-de/vfoxpro/bb190232(en-us).aspx
von der man dann schon mal den
 Servicepack2  und das "GDI+ for SP2" als Allererstes installieren sollte. Die Option "XSource for VFP"  (In dem xSource.zip ist der Sourcecode aller Assistenten und Wizzards drin) bekommen wir über VFPX in einer neueren Version, genauso wie VFPCOM und die Hilfedatei. Der ODBC-Treiber ist zwischenzeitlich garnicht mehr ladbar, aber den ODBC (und den OLEDB) installiert immer noch der schon oben erwähnte Runtime-Installer.

Damit ist dann zumindest laut Microsofts unmaßgeblicher Meinung alles getan... Irrtum! Leider fehlt hier der Verweis auf die unbedingt notwendigen Hotfixes, die einige nach Veröffentlichung von SP2 aufgefundene Fehler korrigieren. 

Wenn man mal bei Microsoft's Knowledgebase nach "FoxPro" sucht, dann tauchen unter anderem auch drei Knowledgebase-Einträge auf, die alle jeweils einen Hotfix als Download huckepack haben (versteckt sich hinter dem "Downloads"-Reiter) Microsoft schreibt zwar, dass man alle Hotfixes der Reihe nach einzeln installieren solle... Aber nicht verzweifeln: Es muss nur der Neueste installiert werden, er beinhaltet auch alle anderen, älteren Hotfixes. Also zum Zeitpunkt dieses Artikels ist der neueste Hotfix die Revisionsnummer 9.000.7423. Dieser wird dummerweise nicht mehr im Download-Portal gehostet, sondern inzwischen ebenfalls auf https://github.com/VFPX/VFP9SP2Hotfix3 zu finden.

Den runterladen und ausführen; es wird wieder nach einem Verzeichnis gefragt. Hier mal ausnahmsweise nicht das VFP Installationsverzeichnis wählen, sondern ein temporäres Verzeichnis angeben (zB \Develop\VFP9Hotfix\). Da dann das Readme.txt lesen und die Dateien entsprechend der Anleitung umkopieren (im Prinzip das MSM ins Installer-Verzeichnis, den Rest ins VFP-Verzeichnis). Ganz Verwegene installieren den Hotfix direkt ins VFP9 Verzeichnis, dann ist alles gleich überschrieben. ;)

Egal wie, aber am Ende sollte VFP9 dann mindestens die VersionsNr 9.00.0000.7423 haben.

Bleiben noch die anderen Optionen des VFP9 Setup-Startbildschirms: Von der Installation des Installshield-Express rate ich ganz vehement ab. Zum Einen gibts die Firma garnicht mehr (wurde von Symantec aufgekauft, und ist damit ein No-Go für mich (Nix Gelbes auf meinem Rechner!)), und zum Anderen gibt's mit InnoSetup ein ganz hervorragendes OpenSource Produkt. Näheres dazu unter
http://fox.wikis.com/wc.dll?Wiki~InnoSetup

Die Soap3 Samples braucht man, wie auch die SQL-Server 2000 Desktop Engine ebenfalls nicht. Besser ist es, die SQL-Server 2014 oder 2017 Express-Version zu installieren, wenn man mit SQL-Server rumexperimentieren möchte. (https://go.microsoft.com/fwlink/?linkid=853017
)


So, fertig mit Installieren, endlich anstarten! VFP9 ist als einfaches Icon im Windows-Startmenü hinterlegt, von dort kann man es in Windows per RechtsMausKlick und "An Taskleiste heften" direkt in die Taskbar legen. Und los gehts...

Duuuh.... Der erste Start von VFP9 bringt dann gleich noch das "Task Pane Manager" Fenster mit der öden Fehlermeldung "0: Class definition MSXML2.DOMDOCUMENT.4.0 is not found" . Süüüpi! Aus unerfindlichen Gründen installiert das VFP9 Setup eben nicht alles Benötigte mit. Nun kann man sich zwar über Sinn und Unsinn der Taskpane streiten, aber dummerweise macht VFP mit XML doch noch mehr als dies. Den fehlenden XML-Parser bekommt man auf drei Wegen ins System:

a) der offizielle Download bei MS: https://www.microsoft.com/de-de/download/details.aspx?id=19662
b) durch Installieren unseres schon oben erwähnten VFP9-Runtime-Installers. Da man den eh später des öfteren für Kunden-Installationen brauchen wird, tendiere ich dazu, diesen Download auf jeden Fall zu empfehlen.
c) Durch Installation des SOAP3 Setups von der VFP9 CD, welches aus unerfindlichen Gründen unter Vista und Win7 nicht mehr automatisch vom Haupt-Setup ausgeführt wird. Dieses beinhaltet nämlich neben dem SOAP3 Client eben auch den XML Installer... Zu finden unter CD:\SoapToolkit\soapsdk.msi.
Da aber sowohl das Soap-Toolkit als auch das XML4 zwischenzeitlich in aktuelleren Versionen vorliegen, empfehle ich den Einzeldownload der aktuellen Versionen (also Option a). Achja: Das Seifen-Dingens findet man hier: https://www.microsoft.com/en-us/download/details.aspx?id=15489 . Sollte man auch installieren, damit die Taskpane auch die neuesten News von http://www.foxcentral.net/ anzeigen kann.

So, was fehlt noch? Nun ja: alles in Englisch, wär schön wenn die Programmierumgebung in Deutsch wäre.. Die dazu notwendige Datei VFP9DEU.DLL (ohne ein "R" nach der "9"!) kann von der Usergroup für einen minimalen Obulus bezogen werden: http://shop.dfpug.de/ProductDetails.aspx?productID=857
Diese Ausgabe rentiert sich auf jeden Fall, denn sobald man das erste mal mit dem Menügenerator ein Systemmenü erstellen möchte, flucht man ungemein, da der Generator eben ein englishces Menü erstellt, mit englischen Beschriftungen, englischen Zusatztexten und englischen Hotkeys. (Tip für die paar Schotten, die nicht mal dafür noch Geld übrighaben: Man kann sich das Grundmenü auch in einer älteren noch deutschen Version erstellen, und dann in VFP9 weiterbearbeiten)


So, dann mal unter Tools bzw Extras den Intellisense-Manager oder die Taskliste aufrufen. Wenn die ohne Fehler anstarten, dann sind auch die üblichen Standard OCX-Controls (Treeview, Listbox etc) noch vorhanden. Wenn's hier scheppert, dann die OCXe schnell mal hier runterladen:
https://www.microsoft.com/de-de/download/details.aspx?id=10019

So, aber jetzt? Neeeee. Einen hab ich noch ;)
Ab nach www.VFPX.org, der OpenSource-Community zu VFP. Hier sammelt sich alles, was man noch so zum täglichen Gebrauch benötigt:
Unbedingt notwendig: Die funktionierende Hilfedatei (denn die vom SP2 is kapott, da sind über tausend Links nicht da etc) Direkt-Download: https://github.com/VFPX/HelpFile 

Wer mit SourceControl arbeitet (also zb  das grausame Visual Sourcesafe oder Sourcegear's hervorragendes VAULT) , sollte das mitgelieferte scctext.prg austauschen gegen scctextx (https://github.com/VFPX/AlternateSCCText) .

Ansonsten noch "Highly recommended" aber nicht unbedingt lebensnotwendig: der neue PEM-Editor und die verbesserten Reporting Apps. Und natürlich Thor...  Und die diversen aktualisierten Teile vom XSource (https://github.com/VFPX/XSource )

So, nun aber steht einem erfolgreichem Start nix im Wege. In einem weiteren Blogpost werd ich dann mal meine VFP-Konfiguration besprechen....

7 Kommentare:

Olaf Doschke hat gesagt…

sauber

Christoph hat gesagt…

Hallo wOOdy

>In einem weiteren Blogpost werd ich dann mal meine VFP-Konfiguration besprechen....

hoffentlich dauert das dann nicht deine übliche BlogPostPause von 2 bis 4 Jahren :)

Von mir aus kannste ruhig öfter was bloggen. Liest sich immer sehr erfrischend.

Gruß Christoph Krapp

Horst Kühn hat gesagt…

Absolut super Woody.

Einfach notwendig so ne Zusammenfassung zu haben und:
Wie soll man denn bloss auf diese verwinkelten Hotfixes stossen.

Mach bitte weiter

Horst Kühn

Jens hat gesagt…

Auch von mir einen herzlichsten Dank für diese sehr hilfreiche und informative Zusammenfassung!!!

Jutta hat gesagt…

Hallo wOOdy,
sag mal, bibt es eine Möglichkeit, deinen genialen Runtime Installer auch "silent" auszuführen? Und zwar so, dass die Reportengine automatisch mitinstalliert wird. Meine User kappieren das sonst nicht...
Danke und liebe Grüße,
Jutta

Anonym hat gesagt…

Hallo wOOdy,

ich habe das Phänomen unter Windows 10, dass beim Start einer Funktion des Programms HECRAS (Fehler trat auch bei anderen Programmen auf konnte aber ignoriert werden) ein Dialogfenster auf geht, dass mich auffordert, eine CD-Rom mit "FoxProRuntime" einzulegen und OK zu drücken. (Datenträger soll FoxProRuntime.msi enthalten)
Ein Installieren der VFP9SP2RT.EXE verlief erfolgreich.
Trotzdem bleibt obiges Problem bestehen.
Wie kann ich dem abhelfen?

Tobi


Peter Herzog hat gesagt…

Versuchte unter Win10 die Seife#3 zu installieren... Aber leider nüscht mehr.