Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Datei nicht wirklich speichern (https://www.delphipraxis.net/56291-datei-nicht-wirklich-speichern.html)

kingflo 3. Nov 2005 11:48


Datei nicht wirklich speichern
 
Guten morgen :-D

Ich habe ein blödes Problem.
Das sieht so aus ich übertrage per stream in der Binary Variable aFile eine datei vom Server zum Client.
Soweit so gut.
Nun darf die Datei aber nicht auf dem Client gespeichert werden, weil dort keine Rechte vorhanden sind.
Denn bis jetzt mache ich es so:

Delphi-Quellcode:
     
      aFile.SaveToFile(_Lizenzdatei);
      iceLicense1.LoadLicenseFromFile(_Lizenzdatei);
      DeleteFile(_Lizenzdatei);
Das Problem ist aber, das iceLicense nicht wie z.B ein memo vom Streamlesen kann sondern nur von Datein, ich aber die datei nicht so wie oben speichern darf. :gruebel:

Und nun? :dp:

Hat jemand ne Idee??? Kann ich eine Datei speichern ohne Sie wirklich zu speichern? :wiejetzt:

Luckie 3. Nov 2005 11:49

Re: Datei nicht wirklich speichern
 
Halt sie doch als Memorystream im Speicher bis du sie nicht mehr brauchst.

Die Muhkuh 3. Nov 2005 11:49

Re: Datei nicht wirklich speichern
 
Hi,

ich würde vorschlagen, in einen Stream zu speichern (TStream oder TMemoryStream)

[edit]Michael war schnell und ich hatte kein roten Kasten :cry: [/edit]

kingflo 3. Nov 2005 11:56

Re: Datei nicht wirklich speichern
 
wie gesagt icelicense kann nur LoadFromFile und genau das ist das hauptproblem.

Afile ist schon ein BinaryStream.
Wenn ich z.B Memo1.lines.loadFromStream (afile) mache geht das nur icelicense kann das net

Kann mir eventuell jemand ein code beispiel zeigen, wie ich es im Memoryspeicher halte und trotzdem eine LoadFromFile procedure benutzen kann?

franktron 3. Nov 2005 12:00

Re: Datei nicht wirklich speichern
 
Ganz blöde gefragt kannst du icelicense das nicht beibringen das es LoadFromStream kann

kingflo 3. Nov 2005 12:09

Re: Datei nicht wirklich speichern
 
Leider nicht...
es ist eine relativ teure Komponente, die wir in der Firma ohne Source gekauft haben. :(

Aber dafür ist die Kompo echt gut :wink: mit exe verschlüsselung Modefikationsschutz und und und...

merlin17 3. Nov 2005 12:31

Re: Datei nicht wirklich speichern
 
Zitat:

Nun darf die Datei aber nicht auf dem Client gespeichert werden, weil dort keine Rechte vorhanden sind.
XP ist hier sicherlich "empfindlicher" als die "alten"-OSe... aber hast Du schon einmal die %temp%-variable und den dortigen
Platz für das temporäre (aber mit loadFromFile erreichbaren) speichern der Datei ausprobiert ??


:-) thomas

kingflo 3. Nov 2005 12:32

Re: Datei nicht wirklich speichern
 
Geht auch nicht...
Die datei darf auf keinen Fall gespeichert werden. Wir machen Software für Krankenhäuser und dort dar nichts gespeichert werden auch nicht im Temp oder im User Ordner.

franktron 3. Nov 2005 12:38

Re: Datei nicht wirklich speichern
 
Zitat:

Zitat von kingflo
Geht auch nicht...
Die datei darf auf keinen Fall gespeichert werden. Wir machen Software für Krankenhäuser und dort dar nichts gespeichert werden auch nicht im Temp oder im User Ordner.

Kurz und bündig dann gehts wohl nicht oder du erzeugst ein Virtuelles Laufwerk (Ramdisk) was aber ein eingriff ins System bedarf was du warscheinlich auch nicht darfst.

Oder kannst du vieleicht was auf dem Server Speichern und dann über den UMS (heist doch so oder ???) Pfad darauf zugreiffen.

LoRd-MuldeR 3. Nov 2005 12:41

Re: Datei nicht wirklich speichern
 
Kann dein iceLicense das vllt als Text (z.B. aus einem Memo) übernehmen? Dann könntest du's zuerst per LoadFromStream in ein Memo laden und von dort aus weiter übergeben.

supermuckl 3. Nov 2005 12:42

Re: Datei nicht wirklich speichern
 
wenn die komponente auf die vcl aufbaut und das savetofile irgendwo erbt, kannste ja eventuell die vcl ein wenig modifizieren, das für diesen speziellen fall savetofile halt intern umgewurschtelt wird und dann savetostream draus wird (und das dann in der komponente verwendet wird)
nur mal so n brainstorm

kingflo 3. Nov 2005 12:51

Re: Datei nicht wirklich speichern
 
die datein liegen auf dem Server und sollen halt vom Client geladen werden, was ist den UMS?


@LoRd-MuldeR rein theoretisch ginge das, daran habe ich auch schon gedacht, aber dann passt das Lizenz Formt aus dem KeyGenerator nicht mehr und es wäre zu umständlich die Lizenzen zu erstellen, von daher musste ich diese Idee wieder verwerfen.

Ich hatte halt gehofft, das man irgendwie ein nicht echtes Verzeich im Speicher erstellt oder so und die datei von dort aus lädt oder so (naja ich weiß net)

kingflo 3. Nov 2005 12:54

Re: Datei nicht wirklich speichern
 
Zitat:

Zitat von supermuckl
wenn die komponente auf die vcl aufbaut und das savetofile irgendwo erbt, kannste ja eventuell die vcl ein wenig modifizieren, das für diesen speziellen fall savetofile halt intern umgewurschtelt wird und dann savetostream draus wird (und das dann in der komponente verwendet wird)
nur mal so n brainstorm

Nicht gut! :shock: dann gäbe es mecker vom Chef ausserdem benutzen andere Projekte die Kompo so wie sie ist und da soll nichts geändert werden. Und wie schon gesagt den Source der Komponente haben wir auch nicht

kingflo 4. Nov 2005 10:26

Re: Datei nicht wirklich speichern
 
Kann mir hier vielleicht nochmal jemand helfen?

Also ich habe es jetzt soweit, das memo1 es vom Stream Lädt.
Das format der Datei ist jetzt angepasst dass es fast so aussieht wie eine ini nur ohne ID's.

[Key]
jiojiosu893793739j3j389j389u39j
893797389737937973joio2j893739
2979363865833zh93h93h89z29749ho
898932748944jj4390u9u2908404777
7027289793877407070724074078869
[ActiveKey]
273737687AA


So und jetzt muss ich dassin Variablen aufteilen

in die Variable _licenseFullKey muss alles rein was unter [Key] steht,
und in die Variable _ActivePubKey muss alles rein was unter [ActiveKey] steht.

weiß jemand wie ich das machen kann Ohne das Memo1 als ini zu speichern??
denn wie gesagt es darf immer noch nicht gespeichert werden *grr* ( ich hasse Krankenhäuser (aber nur in der Hinsicht) )

Union 4. Nov 2005 10:57

Re: Datei nicht wirklich speichern
 
In welchem Format hast Du jetzt diesen Text? Als Stringlist oder als string oder was? Wenn es als String ist und der Aufbau immer der gleiche, würde es doch so gehen:

Delphi-Quellcode:
KeyPart := copy(KeyFull,4, length(KeyFull)-5;
KeyPart := copy(KeyFull,1, pos('[', KeyFull)-1);

Jelly 4. Nov 2005 11:05

Re: Datei nicht wirklich speichern
 
Ich benutze IceLicense auch, und da gibt es doch noch die Möglichkeit, den Lizenzschlüssel wie folgt zu überprüfen:
Delphi-Quellcode:
ICE.ActiveKey := txtActiveKey.Text ;
ICE.LicenseKey.assign (memLicenseKey.Lines) ;
ICE.CheckLicense ;
Das heisst du musst doch gar nicht über LoadFromFile gehen.

Wie übergibst du denn die Lizenz zum Rechner, wenn du nicht speichern darfst. :gruebel:

Union 4. Nov 2005 11:07

Re: Datei nicht wirklich speichern
 
Zitat:

Zitat von Jelly
Wie übergibst du denn die Lizenz zum Rechner, wenn du nicht speichern darfst. :gruebel:

Wahrscheinlich hat er ein rootkit installiert ;) von wegen Hochsicherheits-PC's

kingflo 4. Nov 2005 11:17

Re: Datei nicht wirklich speichern
 
Die Lizen wird vom Server zum Client übertragen dafür benutzen wir RemObjects

@jelly das möchte ich jetzt ja auch so machen nur die Lizenzen liegen halt auf dem server und da loadlicensefromfile (mit ldf) ein anderes format benutzt bzw anders arbeit ging das nicht und ich musste die Lizenz datein jetzt anders speichern damit ich die key benutzen kann

[edit]@ Jelly oder weißt du ob und wie man die aus dem ICELicense erzeugten ldf datein mit der ICElicense komponete benutzen kann ohne LoadLicenseFromFile zu benutzen? denn die ldf datein beinhalten irgendwie nicht den ActiveKey [/edit]

Jelly 4. Nov 2005 11:21

Re: Datei nicht wirklich speichern
 
Ich möchte dich aber vorwarnen, dass IceLicense die Lizenzinformationen an unterschiedlichen Stellen im System speichert, unter anderem auch in Dateien. Ich weiss jetzt nicht wie IceLicense reagiert, wenn plötzlich nirgendwo mehr was gespeichert werden kann. Wenn Du so ein sicheres System hast, wird wohl der Registryzugriff auch schreibend gesperrt sein. Würd mich mal interessieren, wie das IceLicense handeld.

kingflo 4. Nov 2005 11:24

Re: Datei nicht wirklich speichern
 
Zitat:

Zitat von Jelly
Ich möchte dich aber vorwarnen, dass IceLicense die Lizenzinformationen an unterschiedlichen Stellen im System speichert, unter anderem auch in Dateien. Ich weiss jetzt nicht wie IceLicense reagiert, wenn plötzlich nirgendwo mehr was gespeichert werden kann. Wenn Du so ein sicheres System hast, wird wohl der Registryzugriff auch schreibend gesperrt sein. Würd mich mal interessieren, wie das IceLicense handeld.

Ich weiß das Problem haben wir im Griff da das mit den Krankenhäusern auch geklärt ist und das auch nicht zu meinem Aufgabenbereich gehört sondern sich der chef darum kümmert.

Ich habe eben noch was bearbeiten in meinem Post oben

Union 4. Nov 2005 11:30

Re: Datei nicht wirklich speichern
 
Also jetzt verstehe ich das Ganze nicht mehr:
1)
Zitat:

Zitat von kingflo
Die datei darf auf keinen Fall gespeichert werden. Wir machen Software für Krankenhäuser und dort dar nichts gespeichert werden

2)
Zitat:

Zitat von Jelly
Ich möchte dich aber vorwarnen, dass IceLicense die Lizenzinformationen an unterschiedlichen Stellen im System speichert, unter anderem auch in Dateien

3)
Zitat:

Zitat von kingflo
Ich weiß das Problem haben wir im Griff da das mit den Krankenhäusern auch geklärt ist

Dann gibt es doch gar kein Problem, oder? Mich wundert nur die Diskrepanz zwischen 1 und 3.

kingflo 4. Nov 2005 11:34

Re: Datei nicht wirklich speichern
 
Das mit der Registry ist kein problem bzw nicht mein Problem. Ich darf die Regestry nicht benutzen, und ich darf keine Datein abspeichern. Um das Problem mit der registry kpmmert sich ein anderer Kollege, und das ist mich auch egal meine Aufgabe betrifft gerade das übergeben der Lizenzen usw. deshalb ist es mir egal was mit der registry ist.

Wenn wir damit später ein Problem haben ist das pech und dann müssen wir mal sehen. Aber es ist halt jetzt noch nicht meine Aufgabe und daher erstmal egal.

Jelly 4. Nov 2005 11:37

Re: Datei nicht wirklich speichern
 
Zitat:

Zitat von kingflo
Wenn wir damit später ein Problem haben ist das pech und dann müssen wir mal sehen. Aber es ist halt jetzt noch nicht meine Aufgabe und daher erstmal egal.

Seltsame Arbeitseinstellung :shock: Aber das ist nun wirklich nicht mein Problem :zwinker:

kingflo 4. Nov 2005 11:38

Re: Datei nicht wirklich speichern
 
das ist halt alles noch in der Testphase von daher...
Und da das nicht mein Problem ist, weil bei der Arbeitsteilung sich jemand anders darum kümmert ist es doch i.O

kingflo 4. Nov 2005 11:39

Re: Datei nicht wirklich speichern
 
@ Jelly weißt du ob und wie man die aus dem ICELicense erzeugten ldf datein mit der ICElicense komponete benutzen kann ohne LoadLicenseFromFile zu benutzen? denn die ldf datein beinhalten irgendwie nicht den ActiveKey und sehen auch im LicenseKey etwas anders aus

Jelly 4. Nov 2005 11:51

Re: Datei nicht wirklich speichern
 
Zitat:

Zitat von kingflo
weißt du ob und wie man die aus dem ICELicense erzeugten ldf datein mit der ICElicense komponete benutzen kann ohne LoadLicenseFromFile zu benutzen?

Da würd ich mich mal an Ionworx wenden. Ich glaub nicht dass da so ohne Weiteres möglich sein wird. Aber was spricht dagegen, die Lizenzen nicht als .ldf Datei zu speichern, sondern Lizenzschlüssel und Aktivierungsschlüssel getrennt zu speichern? So oder so musst du das Erstellen einer Lizenz manuell in IceLicence vornehmen, oder ?

kingflo 4. Nov 2005 11:57

Re: Datei nicht wirklich speichern
 
das stimmt zwar aber es ist wesentlich leichter die datein aus ICELicense direkt als ldf zu speichern als immer den Key und den Active Key ins notepad zu kopieren und zu speichern. wenn man dann mal für ein Krankenhaus 80 Lizenzen erstellen muss ist es etwas nervig.

kingflo 4. Nov 2005 12:08

Re: Datei nicht wirklich speichern
 
Es spricht leider noch was dagegen.
Mir ist gerade aufgefallen, das wenn ich die datein im eigenem Format speichere ich auch Username und Organisation übergeben muss

Jelly 4. Nov 2005 12:27

Re: Datei nicht wirklich speichern
 
Ja und ?

kingflo 4. Nov 2005 12:34

Re: Datei nicht wirklich speichern
 
das ist dann noch nerviger :wall:

ich habe gerade bei ionworx nachgefragt mal sehen was die Antworten


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz