mikrocontroller.net

Forum: PC-Programmierung Portable Apps selber erstellen (wohin mit der *.ini Datei?)


Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Möchte gerne eine eigene Portable Apps erstellen, welche aus einer .exe 
Datei (Delphiprogramm) und ein paar weiteren Files besteht. (Help usw.)

Das ganze soll ohne Installation ab Memory- Stick auf einem Windows- 
Rechner lauffähig sein.

Brauche aber noch eine *.ini Datei, wo ich Programm- Initialisierungen 
hineinschreiben kann.

Ist ein Schreibzugriff auf diese Datei ohne Admin Rechteerlaubt, wenn 
sie sich im selben Pfad befindet wie die *.exe Datei?

Gruss Andy

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kannst du nicht voraussetzen. Z.B. wenn jemand die portable Installation 
auf einer CD mit sich trägt oder seinen Stick schreibgeschützt hat.

Ich würde beim Speichern einer Konfiguration den User fragen, ob er das 
will und wenn ja wohin das soll. Und dass er dann ein beschreibbares 
Medium bereithalten soll.

Eine Alternative könnte je nach Anwendung auch sein, die Konfiguration 
verschlüsselt auf einem Server im LAN/Internet ab zu legen z.B. 
verschlüsseln und dann mit Steganografie in ein unverdächtiges Medium 
eingearbeitet auf einem öffentlichen Filehoster/Bildhoster... oder als 
Attachment in einem Webmailaccount... Kann ich mir z.B. bei einem 
Webbrowser gut vorstellen.

Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Stefan

Danke für die Info.

Ich kann davon ausgehen, dass der Kunde die Software ausschliesslich ab 
Memory Stick startet, welcher nicht schreibgeschützt ist.

Ich möchte Programm und Daten unbedingt auf dem selben Medium halten.

Die "Portable Apps/" (siehe auch: 
http://de.wikipedia.org/wiki/Stickware) werden ja immer beliebter, weiss 
denn niemand, wie es dort gemacht wird? (Keine Registry Einträge, keine 
*.ini Dateien im Windows Verzeichnis usw.)

Wäre toll, wenn mit jemand erklären könnte, wie es sich mit den 
Zugriffsrechten unter XP/Vista betreffend Memory Stick verhält.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn die Software selber entwickelt wird, kann diese problemlos 
feststellen, von wo sie aufgerufen wird und ihre Einstellungen mit den 
Read/WritePrivateProfileXXX-Funktionen aus/in einer am gleichen Ort 
untergebrachten Ini-Datei lesen/schreiben.

Der Ini-Datei-Zugriff geht auf normalen Windows-Systemen auch ohne 
jedwede Einschränkungen, es sei denn, zusätzliche "Sicherheits"-Tools 
verhindern dies.

Den Dateinamen und Pfad kann ein Prozess mit der Win32-API-Funktion 
GetModuleFileName() bestimmen (erster Parameter NULL, zweiter Parameter 
ein ausreichend großer Puffer, dritter Parameter Anzahl Zeichen des 
Puffers).

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Die Funktion 'ParamStr(0)' gibt dir einen String mit Pfad und Name 
deiner Exe zurück.

Mit z.B.

s:=ExtractFilePath(ParamStr(0))+'Programm.ini';

erhälst du in s den Pfad und Namen der Ini-Datei.

MfG Spess

Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke ihr beiden.

Die Funktion ParamStr(0) kenne ich bereits.
Hab auch nicht das Problem den Pfad meiner EXE herauszufinden. Möchte 
nur sicher gehen, dass ich keine Zugriffsrechte beim Schreiben verletze, 
wenn ich in die INI Datei schreibe, welche in meinem EXE Verzeichnis 
liegt.

@Rufus
Wie meintest Du das genau?

... Read/WritePrivateProfileXXX-Funktionen ...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.