Embedded Datenbank mit allen Benutzern

Diskutiere Embedded Datenbank mit allen Benutzern im Windows 7 Sicherheit Forum im Bereich Windows 7; Hallo allerseits, ich habe ein Programm für Windows mit der Embedded Datenbank Firebird geschrieben. Dieses Programm wird unter...

  1. #1 gtmind.de, 18.04.2012
    gtmind.de

    gtmind.de Neuer Benutzer

    Dabei seit:
    18.04.2012
    Beiträge:
    4
    Zustimmungen:
    0
    Version:
    Home Premium
    Hallo allerseits,

    ich habe ein Programm für Windows mit der Embedded Datenbank Firebird geschrieben. Dieses Programm wird unter c:\Programme\Programmname installiert. Bis Windows XP funktioniert alles bestens. Unter Windows 7 kommen dann die Probleme mit den Berechtigungen.
    - Wenn ein Benutzer das Programm öffnet kann er auf die Daten welche bei der Installation mitgeliefert wurden zugreifen
    - Er kann diese Daten auch verändern
    - Diese Daten sind beim nächsten Start auch wieder vorhanden

    nur:
    wenn ein anderer Benutzer das Programm öffnet hat er wieder die Daten welche bei der Installation mitgeliefert wurden nur die Daten welche der andere Benutzer geändert oder hinzugefügt hat nicht. D.H. Jeder Benutzer hat seinen eigenen Datenbestand.

    Wie kann man das ändern das alle den gleichen Datenbestand haben?

    für Antworten bedanke ich mich im voraus

    Gerald
     
  2. #2 areiland, 18.04.2012
    areiland

    areiland Erfahrener Benutzer
    Moderator

    Dabei seit:
    11.12.2009
    Beiträge:
    16.880
    Zustimmungen:
    2
    Version:
    Windows 10 Pro x64 Build 1511 10586.29
    System:
    970M Pro3, AMD FX6350, ATI 7730, 16GB DDR3 1600, SSD256 GB, HD502HJ, SH224BB
    Stell sicher dass die Daten im Ordner C:\Users\Öffentlich\Öffentliche Dokumente abgespeichert werden. Darauf hat jeder Benutzer Zugriff. Ausserdem muss das Programm für alle Benutzer installiert sein.
     
  3. #3 gtmind.de, 18.04.2012
    gtmind.de

    gtmind.de Neuer Benutzer

    Dabei seit:
    18.04.2012
    Beiträge:
    4
    Zustimmungen:
    0
    Version:
    Home Premium
    jo Danke für die superschnelle Anwort.
    Funktioniert soweit. Aber ist das eine Windowskonformer Ordner für Programme C:\Users\Public\Prgrammname ????
     
  4. #4 Xwin7userX, 18.04.2012
    Xwin7userX

    Xwin7userX Erfahrener Benutzer

    Dabei seit:
    24.10.2010
    Beiträge:
    2.347
    Zustimmungen:
    0
    Version:
    Windows 7 Professional 64bit, ArchLinux 64bit
    System:
    siehe Signatur
    Du kannst das Programm schon noch nach C:\Programme installieren, nur die Dateien, die von Benutzern verändert werden sollten nach C:\Users\Public\Documents.
     
  5. #5 areiland, 18.04.2012
    areiland

    areiland Erfahrener Benutzer
    Moderator

    Dabei seit:
    11.12.2009
    Beiträge:
    16.880
    Zustimmungen:
    2
    Version:
    Windows 10 Pro x64 Build 1511 10586.29
    System:
    970M Pro3, AMD FX6350, ATI 7730, 16GB DDR3 1600, SSD256 GB, HD502HJ, SH224BB
    Nein, das ist ein reiner Datenordner. Das Problem bei der Geschichte ist, dass Du die von mehreren Benutzern gleichzeitig veränderlichen Daten an einem Ort halten musst, der allen Benutzern Schreibrechte bietet. Damit scheidet der Programmordner C:\Programme oder C:\Programme (x86) aus. Die geänderten Daten des Benutzers landen in seinem Benutzerprofil in C:\Users\<Benutzername>\Appdata. Also scheidet dieser Ordner dafür ebenfalls aus. Daten (ich rede hier nicht von Benutzereinstellungen - sondern von den Datenbankdateien!) die von allen Benutzern gleichermassen bearbeitet werden sollen, die müssen folglich in einem Ordner liegen - der allen Benutzern gleichermassen alle nötigen Rechte bietet.

    Also Programm nach C:\Programme installieren, die Benutzerspezifischen Einstellungen (Aussehen etc.) landen im Benutzerprofil in AppData, die Datenbankdateien müssen aber (eben wegen der Zugreif- und Bearbeitbarkeit für alle Benutzer) in einem Ordner abgelegt werden, der allen volle Rechte zubilligt. Das ist eben idealerweise C:\Users\Öffentlich\Öffentliche Dokumente.
     
  6. #6 gtmind.de, 18.04.2012
    gtmind.de

    gtmind.de Neuer Benutzer

    Dabei seit:
    18.04.2012
    Beiträge:
    4
    Zustimmungen:
    0
    Version:
    Home Premium
    jo vielen Dank für die Antworten ...
    muss ich erst mal verdauen und mir überlegen wie ich das realisiere

    Gerald
     
  7. #7 areiland, 18.04.2012
    Zuletzt bearbeitet: 18.04.2012
    areiland

    areiland Erfahrener Benutzer
    Moderator

    Dabei seit:
    11.12.2009
    Beiträge:
    16.880
    Zustimmungen:
    2
    Version:
    Windows 10 Pro x64 Build 1511 10586.29
    System:
    970M Pro3, AMD FX6350, ATI 7730, 16GB DDR3 1600, SSD256 GB, HD502HJ, SH224BB
    Du könntest für die Datenbankdateien z.B. eine Systemvariable setzen die auf "C:\Users\Public\Public Documents" verweist und diese Variable als Datenbankpfad angeben. Oder mit mklink /J einen Verzeichnisverweis nach "C:\Users\Public\Public Documents" setzen, dann kannst Du den Datenbankpfad logisch im Programmordner halten. Tatsächlich wird aber nach "C:\Users\Public\Public Documents" gespeichert.
     
  8. #8 gtmind.de, 19.04.2012
    gtmind.de

    gtmind.de Neuer Benutzer

    Dabei seit:
    18.04.2012
    Beiträge:
    4
    Zustimmungen:
    0
    Version:
    Home Premium
    Ich habe das Programm so umgeschrieben, das die Dateien welche von jedem Benutzer geändert werden im Verzeichnis:
    Win. XP: C:\Dokumente und Einstellungen\All Users\Dokumente\
    Win. 7: C:\Users\Public\Documents\
    stehen. Das ist zwar für ein arbeiten Mobil auf einem USB-Stick nicht förderlich aber wahrscheinlich Windowskonformer als vorher.
    Vielen Dank hier an die guten und vorallem schnellen Antowten.

    Gerald
     
  9. #9 areiland, 19.04.2012
    Zuletzt bearbeitet: 19.04.2012
    areiland

    areiland Erfahrener Benutzer
    Moderator

    Dabei seit:
    11.12.2009
    Beiträge:
    16.880
    Zustimmungen:
    2
    Version:
    Windows 10 Pro x64 Build 1511 10586.29
    System:
    970M Pro3, AMD FX6350, ATI 7730, 16GB DDR3 1600, SSD256 GB, HD502HJ, SH224BB
    Es ginge einfacher mit "%ALLUSERSPROFILE%\Dokumente" für Windows 7 und XP (auch für Vista). Bei XP wäre das dann der Ordner "C:\Dokumente und Einstellungen\All Users\Dokumente". Bei Windows 7 und Vista wäre das "C:\Programdata\Dokumente", es wäre absolut Windowskonform und spart Aufwand, denn "C:\Programdata\Dokumente" ist ein Verzeichnislink, der auf "C:\Users\Public\Documents" zeigt.

    Ausserdem könntest Du beim Programmstart (oder der Installation) Laufwerk und Pfad des Firebird Ordners ermitteln und eine entsprechende Variable setzen, die dann auf den Speicherordner zeigt.

    Also etwa so:

    "Set FirebirdDokumentsPath=%ALLUSERSPROFILE%\Dokumente" - wenn Firebird installiert ist
    und
    "Set FirebirdDokumentsPath=%CD%\Dokumente" - wenn Firebird mobil ist

    Dann eben statt "%ALLUSERSPROFILE%\Dokumente" nur noch "%FirebirdDokumentsPath%" benutzen um die Daten ins richtige Verzeichnis zu bekommen.

    Mit der Regdatei:
    ...

    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USER\Environment]
    "FirebirdDokumentsPath"="=%ALLUSERSPROFILE%\Dokumente"

    ...

    würdest Du bei der Installation die Umgebungsvariable in das Profil des aktuellen Benutzers eintragen.

    Wird Firebird für alle Benutzer installiert, dann muss es so gemacht werden:
    ...

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment]
    "FirebirdDokumentsPath"="=%ALLUSERSPROFILE%\Dokumente"

    ...

    (Die Leerzeichen in Session und Dokumente entfernen - sie werden von der Forensoftware eingefügt)


    Im mobilen Einsatz wäre vielleicht ein Start über eine Batchdatei hilfreich:

    ...

    @echo off
    set FirebirdDokumentsPath=%CD%\Dokumente
    Firebird.exe

    ...

    In "%CD%" steht dann der Ordner, in dem der Batch liegt.

    So wären sowohl der mobile als auch der immobile Einsatz abgedeckt. Sollen die Daten im mobilen Einsatz trotzdem auf der Festplatte des Rechners abgelegt werden, dann einfach das "%CD%" durch "%ALLUSERSPROFILE%" ersetzen.
     
Thema: Embedded Datenbank mit allen Benutzern
Besucher kamen mit folgenden Suchen
  1. c# datenbankdatei pfad

    ,
  2. firebird embedded datenbank erstellen

    ,
  3. windows umgebungsvariable firebird

    ,
  4. c# datenbankpfade nach umgebung,
  5. windows embedded benutzer anpassen,
  6. win7 verzeichnisverwesi ,
  7. access xp zugriff auf embedded firebird datenbank,
  8. firebird embedded einrichten,
  9. firebird datenbank probleme mit windows 7,
  10. firebird link datenbank c:,
  11. firebird embedded installation,
  12. tool für embedded db,
  13. wenn auf c users jeder,
  14. c# datenbank bei installation einrichten,
  15. windows 7 embedded nach updates suchen,
  16. c# zugriff auf embedded firebird,
  17. win7 embedded konfiguration aendern,
  18. firebird embedded installieren datenbank erstellen,
  19. wo stehen bei windows 7 alle benutzer,
  20. zugriff firebird db von c#,
  21. embedded firebird pfade ändern,
  22. firebird embedded current_user,
  23. win7 embedded netzwerk konfiguration,
  24. firebird win7,
  25. windows 7 welches tool muss für datenbanken installiert sein
Die Seite wird geladen...

Embedded Datenbank mit allen Benutzern - Ähnliche Themen

  1. 2 Monitore benutzen

    2 Monitore benutzen: Hallo, Ich habe meinen Flachbildschirm mit VGA Kabel verbunden und sehe jetzt das gleiche Bild wie am Laptop (windos 7) ich möchte aber gern am...
  2. Anmeldung als Benutzer

    Anmeldung als Benutzer: Die Anmeldung des Dienstes `Benutzerprofildienst` ist fehlgeschlagen. Das Benutzerprofil kann nicht geladen werden. Kann mir jemand...
  3. Kennwort Administrator-Konto und Benutzer-Konto

    Kennwort Administrator-Konto und Benutzer-Konto: Guten Tag, a) Wenn ich einen PC alleine benutze, sollte ich da ein Kennwort für Administrator und eins für das Benutzerkonto einrichten? b)...
  4. windows embedded 7 fehler bei essential connect

    windows embedded 7 fehler bei essential connect: Ich versuche ein Windows embedded 7 Client mit den Essentials Connector mit ein Windows Server2012 R2 zu verbinden. Mit http:// server/ connecte...
  5. Win 7 zwei RDP Dateien warum immer gleicher Benutzer?

    Win 7 zwei RDP Dateien warum immer gleicher Benutzer?: Hallo alle zusammen auf meinem Desktop habe ich zwei RDP Dateien gespeichert. Die eine zeigt auf einen Win 7 PC die andere auf einen Win 10 PC....
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden