AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TPath.GetIrgendwas

Ein Thema von himitsu · begonnen am 15. Okt 2016 · letzter Beitrag vom 24. Okt 2016
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.535 Beiträge
 
Delphi 12 Athens
 
#1

AW: TPatn.GetIrgendwas

  Alt 15. Okt 2016, 10:00
In der OH steht auch womit der Pfad geholt wird/übereinstimmt, aber der Code macht dann ebenfalls was Anders.

Laut OH, bis WinXP mit CSIDL_***, ab Vista mit FOLDERID_*** und wenn ich in den Code gucke, dann seh ich entweder nur das WinXP-Zeugs oder was Anderes.
Aber egal, wenn das Richtige rauskommt, wäre es ja nicht so schlimm.

Wenn aber "benutzerunabhängig" drin steht und ich in verschiedenen eingeloggten Benutzern nicht das selbe Verzeichnis bekomme und somit im anderen Nutzer die Dateien nicht finde, dann ist das schon ein "kleines" Problem.

[add]
Ist im Android ja auch so, also das Jede App mit den Rechten eines eigenen Nutzers läuft und so z.B. nur auf seine Programmdateien, aber nicht auf die anderer Apps drauf kommt.

Zitat:
Ob da also die App-ID drinsteht oder nicht, muss letztlich nur das mobile Betriebssystem wissen.
Eben nicht, denn wenn ich jetzt z.B. zwei Programme hab, die die selben Dateien nutzen sollen, dann sollte das Verzeichnis die TPath.Methode, wo steht, dass es sie bietet, das dann doch auch machen?
Und wenn da explizit "anwendungsunabhängig", dann sollte das doch möglichst auch so sein, egal wie das OS mit den "Benutzern" umgeht.


Fazit: Ich schreibe grade meine eigenen TPath methoden, die für die wichtigstens Pfade dann auch so machen, wie sie gedacht sind.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (15. Okt 2016 um 10:07 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.164 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: TPatn.GetIrgendwas

  Alt 15. Okt 2016, 10:32
Eben nicht, denn wenn ich jetzt z.B. zwei Programme hab, die die selben Dateien nutzen sollen, dann sollte das Verzeichnis die TPath.Methode, wo steht, dass es sie bietet, das dann doch auch machen?
Irre ich mich? Das geht sowieso nicht.

Du bist in einer Sandbox und hast auf andere Verzeichnisse keine Zugriffsrechte. (Jedenfalls auf iOS und ich glaube auf Android auch!)

Hab noch nie versucht!
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: TPath.GetIrgendwas

  Alt 15. Okt 2016, 10:32
Wie möchtest Du denn z.B. unter iOS aus Deiner geschützten Umgebung ausbrechen? Da ist doch deutlich mehr nötig, als sich nur einen Pfad auszudenken - mit einem Äquivalent zu TPath wirst Du, egal in welche Richtung Du läufst, gegen eine Wand rennen. (Lassen wir Jailbreaks mal unberücksichtigt.)
Hier wirst Du Synchronisations-Lösugnen wie iCloud, DropBox oder Vergleichbares benötigen.

//edit: Die Doku ist an dieser Stelle mit dem Wort "anwendungsunabhängig" unbestritten falsch und verspricht Dinge, die systembedingt nicht eingehalten werden können.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.164 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: TPath.GetIrgendwas

  Alt 15. Okt 2016, 10:43
Wie möchtest Du denn z.B. unter iOS aus Deiner geschützten Umgebung ausbrechen?
Was ist mit Android?

Es gibt doch neben Cloud und Dropbox noch dir Möglichkeit per URL eine andere App an zu sprechen... Ginge das nicht? So wie ein REST Call?
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: TPath.GetIrgendwas

  Alt 15. Okt 2016, 10:56
Unter Android hast Du den sog. "external storage", auf dem sich öffentliche Dateien ablegen lassen. Der Name leitet sich aus den früheren Geräte-Generationen ab, die einen SD-Einschub hatten und auf diese Weise zusätzlichen Speicherplatz boten. Das Konzept des "externen Speichers" ist mittlerweile in Android verwurzelt, so dass diese Option auch besteht, selbst wenn hardware-seitig KEIN echter externer Speicher existiert. In diesem Fall nutzt das Betriebssystem einen Teil des internen Speichers.
Voraussetzung für all das ist, dass man sich die entsprechenden Rechte eingefordert hat.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.164 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: TPath.GetIrgendwas

  Alt 15. Okt 2016, 11:09
Das Konzept des "externen Speichers" ist mittlerweile in Android verwurzelt, so dass diese Option auch besteht, selbst wenn hardware-seitig KEIN echter externer Speicher existiert. In diesem Fall nutzt das Betriebssystem einen Teil des internen Speichers.
Ohh gut zu wissen... Hab darauf nie versucht zuzugreifen, da ich befürchtet habe, dass wenn keine SD Karte existiert ich nur eine Exception bekomme.

Mavarik
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: TPath.GetIrgendwas

  Alt 15. Okt 2016, 11:29
Die kannst Du dennoch bekommen, zum Beispiel dann, wenn das Android-Gerät per USB an einen Rechner angeschlossen ist und der externe Speicher dort "gemounted" ist. Für diesen Zeitraum ist der externe Speicher exklusiv für den angeschlossenen PC verfügbar und nicht mehr für die Apps auf dem Gerät - gleich, welche Rechte diese haben.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.164 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: TPath.GetIrgendwas

  Alt 15. Okt 2016, 11:35
Die kannst Du dennoch bekommen, zum Beispiel dann, wenn das Android-Gerät per USB an einen Rechner angeschlossen ist und der externe Speicher dort "gemounted" ist. Für diesen Zeitraum ist der externe Speicher exklusiv für den angeschlossenen PC verfügbar und nicht mehr für die Apps auf dem Gerät - gleich, welche Rechte diese haben.
Ohh, dann hat sich die Idee sowieso schon erledigt... Danke für die Info
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.535 Beiträge
 
Delphi 12 Athens
 
#9

AW: TPath.GetIrgendwas

  Alt 15. Okt 2016, 12:24
SharedPictures ist unter Android ohne AppID, aber SharedDocuments dann doch wieder, also nix mit Shared.

Ohh gut zu wissen... Hab darauf nie versucht zuzugreifen, da ich befürchtet habe, dass wenn keine SD Karte existiert ich nur eine Exception bekomme.
Dann geben die TPath.Get-Funktionen einen Leerstring zurück, wenn der Pfad nicht existiert.
Ich hoffe du prüfst das vor dem Zugriff.

Jo, da wird das physische Laufwerk gemountet und nicht 'nen Fileserver dazwischengeschaltet.
Drum wird der interne Zugriff gesperrt, da dort kein sicheres Sharing möglich ist.
So kann man bei Kamers dann auch im PC die SD-Karte formatieren. (wenn die Karte als Laufwerk gemountet ist und nicht über das komische Picture-Protokoll, dessen Namen mir grade nicht einfällt)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (15. Okt 2016 um 12:29 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Olli73
Olli73

Registriert seit: 25. Apr 2008
Ort: Neunkirchen
793 Beiträge
 
#10

AW: TPath.GetIrgendwas

  Alt 16. Okt 2016, 12:20
Jo, da wird das physische Laufwerk gemountet und nicht 'nen Fileserver dazwischengeschaltet.
Drum wird der interne Zugriff gesperrt, da dort kein sicheres Sharing möglich ist.
So kann man bei Kamers dann auch im PC die SD-Karte formatieren. (wenn die Karte als Laufwerk gemountet ist und nicht über das komische Picture-Protokoll, dessen Namen mir grade nicht einfällt)
Du meinst PTP bzw. MTP. Letzteres wird seit Android 3.1 unterstützt (laut Wikipedia). Also nix mehr mit mounten (nötig). Damit klappt dann auch der gemeinsame Dateizugriff.

Oder liege ich hier komplett falsch?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz