TS Client Problem

Von der Installation bis zur Auslieferung der Applikation

Moderator: Moderatoren

Antworten
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

TS Client Problem

Beitrag von Rudolf »

Hallo,
habe gerade ein sehr eigenartiges Problem bei einem Kunden mit Windows Server R2008 und TS Clients. Über den Admin User mit allen Rechten funktioniert alles einwandfrei. Aber bei weiteren Usern treten massive Datenbankprobleme auf. Z.B. werden bei einem User nicht alle Datensätze einer Datei angezeigt. Änderungen an ältern Sätzen sind aber sofort sichtbar. Daten aus Memofelder können bei beiden Usern nicht ausgelesen werden, die Felder sind auf den Clients leer. Wenn aber vom Client Memofelder in die Datei zurückgespeichert werden, ist die Datei zerstört, dann kann ich auch mit dem Admin User die Daten nicht mehr lesen. Kommt immer eine Fehlermeldung dass DAten nicht gelesen werden können. Habe schon die Dateien herumkopiert, andere Datenbestände verwendet, User alle möglichen Rechte gegeben etc, nichts hat geholfen. Auch die Registryeinträge habe ich lt. den diversen Empfehlungen angepasst.
Das Programm läuft bei anderen Firmen und in meiner Umgebung einwandfrei mit den TS Clients.
Hat jemand so ein Problem schon einmal gesehen ?
Grüße
Rudolf
Benutzeravatar
azzo
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 483
Registriert: So, 28. Mär 2010 19:21
Danksagung erhalten: 11 Mal

Re: TS Client Problem

Beitrag von azzo »

Hallo Rudolf,
wir gehen beim Installieren nach folgender Anleitung vor:
Remotedesktop Rollen hinzufügen
Start - Verwaltung - ServerManager - Rollen - Rollen hinzufügen
Keine Authentifizierung

Folgende Systemdienste installieren:
Remotedesktop-Sitzungshost
Remotedesktoplizensierung
Administratoren & Terminalserverbenutzer

Remote Desktop zulassen
Start - Computer - Remoteeinstellungen - Remoteunterstützungsverbindungen zulassen - Verbindungen von Remote Computern zulassen, bei denen beliebige Version von Remote Desktop ausgeführt wird

Windows Firewall
Start - Windows Firewall - Ein Programm oder Feature durch die Windows-Firewall zulassen - Remotedesktop

Remote Desktop Service CALs aktivieren
Start - Verwaltung - Remotedesktopdienste - Remotedesktoplizensierungs-Manager (Lizensierung aufgrund des Sicherheitszertifikates via Telefon durchführen)

Remote Server Verwaltungstools hinzufügen
Start - Verwaltung - Servermanager - Features - Features hinzufügen - Remote Server Verwaltungstools (installieren oder bereits installiert)

Benutzer anlegen & zur Gruppe RDP Benutzer hinzufügen
Start - Verwaltung - Computerverwaltung - Lokale Benutzer und Gruppen - Neuen Benutzer anlegen - Eigenschaften - Benutzer kann Passwort nicht ändern - Kennwort läuft nie ab

Zu Remotedesktopnutzer hinzufügen (Benutzer entfernen)


(Datei-)Freigabeberechtigungen
Schreib- und Leserechte auf Ordner
Dateiordner mit rechter Maustaste auswählen - Eigenschaften - Sicherheit - Hinzufügen RemoteDesktopBenutzer - Vollzugriff zuweisen
Dateiordner mit rechter Maustaste auswählen - Eigenschaften - Allgemein - Schreibgeschützt deaktivieren


mfg
Otto
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: TS Client Problem

Beitrag von Rudolf »

Hallo Otto,
vielen Dank für den Tip, werde ihn an meinen Kunden weiterleiten. Ist nur eigenartig, dass bei allen vorherigen Installationen und auf meinem Server das Problem nie aufgetreten ist. Scheint wirklich dass z.B. in einer virtualisierten Umgebung der TS Client komplett anders konfiguriert ist bzw. anders reagiert

Grüße
Rudolf
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: TS Client Problem

Beitrag von Rudolf »

Hallo,
der Kunde hat das Problem gefunden. Es wurden FPT und CDX Dateien in einem anderen Verzeichnis gefunden, welche vom Datum mit den DBF Dateien im richtigen Datenverzeichnis zusammenhängen. Damit hat das System Dateien vermischt, also DBF vom richtigen Verzeichnis und FPT und teilweise CDX vom andern Verzeichnis. Nach dem Löschen des falschen Verzeichnis hat alles wieder funktioniert. Der Kunde ist immer noch der Meinung dass ich irgendwo eine falsche Pfadangabe in meinem Programm habe, ist aber nicht möglich, sonst würde es nach dem Löschen nicht mehr funktionieren. Der Fehler muss vom Betriebssystem kommen. Nur wie sowas entsteht ist mir rätselhaft, vor allem wieso die TS Clients sich jeweils die Daten unterschiedlich zusammensuchen.
Grüße
Rudolf
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: TS Client Problem

Beitrag von Rudolf »

Hallo,
war das gleiche Problem:
http://www.interworks.com/blogs/dsmith/ ... tual-store
http://www.itninja.com/question/c-users ... rtualstore
Ist nur Eigenartig, hatte noch nie so ein Problem, meine Daten sind immer im Programmverzeichnis. Auch andere Programme schreiben dorthin und haben keine Probleme. Könnte es mit der Art der Installation zu tun haben ? Mit einem Installationsprogramm hat es immer geklappt, beim letzten Mal habe ich das Verzeichnis manuell angelegt und die Rechte vergeben.
Grüße
Rudolf
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: TS Client Problem

Beitrag von brandelh »

kommt darauf an, wo das Programmverzeichnis ist :!:

Windows 7 geht davon aus, dass alles was unter \programme (bei 64 bit kommt noch ein x86 dazu) liegt, zwar für mehrere User zugänglich ist,
die Daten aber JE USER getrennt gespeichert werden ( SET APPDATA ) ... man könnte auch PUBLIC in betracht ziehen, aber wenn man auf einem TS bzw. im Netzwerk arbeitet,
will man ja gerade NICHT dass jeder USER eigene Dateien hat. Somit muss man die Daten in einem zentralen Verzeichnis speichern, das nicht unter Windowsverwaltung liegt.
z.B. c:\meineDaten oder \\Server\MyData ... und die Probleme entstehen erst gar nicht.
Gruß
Hubert
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: TS Client Problem

Beitrag von Rudolf »

Hallo Hubert,
ist aber eigenartig dass es bis jetzt problemlos funktioniert hat, ist das erste Mal dass dieses Problem auftritt. Es wird relativ kompliziert wenn ich alle Daten die sich ändern können in ein anderes Verzeichnis lege.
Grüße
Rudolf
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: TS Client Problem

Beitrag von brandelh »

Hallo Rudolf,

ich habe nicht gesagt, dass du deine Daten aus deinem Programmverzeichnis herauslegen musst.
Dieses darf dann aber NICHT unter c:\programme (bzw. tatsächlich 'C:\Program Files (x86)' und 'C:\Program Files' etc.) liegen !

Meine EXEs liegen unter D:\MyApps\MyApp (Namen geändert) und haben keinerlei Probleme mit Windows 7 !
Gruß
Hubert
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: TS Client Problem

Beitrag von Rudolf »

Hallo Hubert,
ok, werde in Zukunft zur Sicherheit ein anderes Verzeichnis wählen. Ich frage mich nur wie es andere machen die auch ins Programmverzeichnis schreiben.
Grüße
Rudolf
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: TS Client Problem

Beitrag von brandelh »

"ins Programmverzeichnis" ... das habe ich früher gemacht, als die Anwendung auf lokalen Rechnern installiert wurden.
Wenn man genau einen TS hat kann man es auch machen, aber dieses Verzeichnis darf dann nicht unter C:\PROGRAMME\ liegen, denn dieser Pfad gehört Windows !

Bei einer Netzanwendung bzw. auch mehrere TS auf eine Freigabe, nutze ich immer eine Variable und lade diese über eine INI im Programmverzeichnis:

Code: Alles auswählen

cDatenVerzeichnis := GetINI("Allgemein","Datenverzeichnis") // z.B. \\DB-Server\MeineFreigabe\MeinProgramm\
Der Serveradmin ist dafür verantwortlich, die INI mit dem richtigen Verzeichnis zu füttern und die Rechte sauber zu vergeben (Anwendergruppe benötigt Lesen/Schreiben/Ändern ...)
Gruß
Hubert
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: TS Client Problem

Beitrag von Rudolf »

Hallo Hubert,
das mache ich genauso, aber ich habe noch viele temporäre Daten, Konfigurations Files etc., die muss ich auch noch alle umlegen. Aber es macht sicher Sinn Daten und Programm zu trennen.
Grüße
Rudolf
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: TS Client Problem

Beitrag von Tom »

Ich frage mich nur wie es andere machen die auch ins Programmverzeichnis schreiben.
Das mache ich aus genau diesen Gründen nicht mehr. War kein einfacher Weg. Aus allen lokalen/benutzerspezifischen Konfigurationsdateien sind Registry-Einträge geworden (LOCAL_MACHINE oder CURRENT_USER), und temporäres Zeug wird im jeweils eingestellten Temp-Verzeichnis abgelegt, das ich über die API abfrage und nicht etwa über "SET TEMP".
Herzlich,
Tom
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: TS Client Problem

Beitrag von Rudolf »

Hallo Tom,
wie fragst Du das Temp Verzeichnis ab ? wäre natürlich die sauberere Lösung dafür
Grüße
Rudolf
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: TS Client Problem

Beitrag von Tom »

Code: Alles auswählen

DLLFUNCTION GetTempPathA( buffsize, @buffer ) ;
         USING STDCALL ;
          FROM KERNEL32.DLL

FUNCTION GetTempPath()
LOCAL nBuffSize := 261
LOCAL sBuffer := Replicate(chr(0),261)
LOCAL cTempPath := ''
GetTempPathA(nBuffsize, @sBuffer)
cTempPath := Trim(StrTran(sBuffer,chr(0),''))
RETURN cTempPath
Herzlich,
Tom
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: TS Client Problem

Beitrag von Rudolf »

Hallo Tom,
Danke !
Grüße
Rudolf
Antworten