AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Datentypen in der Registry
Thema durchsuchen
Ansicht
Themen-Optionen

Datentypen in der Registry

Ein Thema von delnu · begonnen am 16. Okt 2015 · letzter Beitrag vom 22. Okt 2015
Antwort Antwort
Seite 1 von 2  1 2      
delnu
(Gast)

n/a Beiträge
 
#1

Datentypen in der Registry

  Alt 16. Okt 2015, 23:35
Leider habe ich lange nichts mehr mit Delphi gemacht und darum etwas den Überblick verloren.

Weil ich momentan einen ganze Schwung billig erworbener gebrauchter PCs einzurichten habe, bin ich es leid, überall die Dateitypen manuell einzutragen. Es geht darum, grundsätzlich für multimediale Inhalte portable Programme zuzuweisen.

Das sind z.B. vor allem IrfanView und VLC.

Leider komme ich mit der Registry nicht weiter. Es geht zunächst um das Ermitteln der aktuellen Einträge, ehe daran zu denken ist, neue einzutragen. Das ist nämlich nur nötig, wenn die gewünschte Zuweisung noch nicht existiert.

Wenn ich die Dateitypen unter HKEY_CLASSES_ROOT auslese, bekomme ich z.B. für Dateien, die eigentlich mit IrfanView geöffnet werden sollen, überall rundll32.exe C:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscre en %1 als Ergebnis.

Die Zuweisungen für IrfanView und anderes finde ich hingegen bei direkter Suche mit Regedit unter HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Explorer\FileExts, aber dann auch immer nur mit OpenWithList und OpenWithProgids.

Wie finde ich das mit Delphi? Und wie kann ich die von mir gewünschten Einträge allgemeingültig als Vorgaben setzen, also bei HKEY_CLASSES_ROOT ?

Meine bisherigen Tests basieren auf Beiträgen, die ich hier im Forum fand. Weil sie aber alle nicht genau das machten, was ich wissen will, mußte ich sie anpassen, um überhaupt Ergebnisse zu bekommen. Weil das im Endeffekt nichts brachte, habe ich das wieder gelöscht und stehe am Anfang.

Kann mir jemand irgendwie weiterhelfen? Es geht um alte Delphi-Versionen (3, 4, 5, 7) und alte Windows-Versionen (98SE, XP).

Bitte keine Kommentare zu "veraltet, unsicher" usw., denn es ist eine Kostenfrage, eine Frage des Prinzips und hat praktische Gründe, die zu erläutern themenfremd wäre.

Danke.
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#2

AW: Datentypen in der Registry

  Alt 17. Okt 2015, 00:55
Ich würde da nicht das Rad neu erfinden und auf die Möglichkeiten zurückgreifen, die die Programme bzw. deren Setups eh schon bieten. Das geht, indem man die Programme unbeaufsichtigt installiert - was sich bei einer Menge von Rechnern ja sowieso anbietet. IrfanView hat die Schalter alle in der FAQ zusammengefasst, hier die fürs Setup (für das Thema ist vor allem /assoc bzw. /assocallusers relevant). Für VLC gibt's auch entsprechende Anleitungen, normalerweise reicht dort aber einfach Schalter /S, und standardmäßig krallt sich VLC sowieso alle Dateitypen, die er kennt (was nicht meine Zustimmung findet, aber das ist ja nicht das Thema).

MfG Dalai
  Mit Zitat antworten Zitat
delnu
(Gast)

n/a Beiträge
 
#3

AW: Datentypen in der Registry

  Alt 17. Okt 2015, 05:19
Danke erstmal, ABER:

1.) Es geht um PORTABLES. Ich will nichts installieren.
2.) IrfanView und VLC sind lediglich Beispiele, weil für diese Progs viele Dateitypen in Betracht kommen.

Es geht in jedem Fall darum, daß ich für genau die in meinem Eingangspost aufgeworfenen Fragen, also Zugriffs auf die Registry, Lösungsansätze suche.

Also bitte keine solchen "Antworten" mehr, bei denen sich mir nur die sarkastische Frage stellt: "Klar, warum programmieren wir eigentlich noch selbst, wenn es doch schon soviele, fertige eiernde Räder gibt ?" !!!

Bei der Menge von Rechnern bietet sich für mich nur eine einzige zeitsparende Lösung an und die heißt:

Fertiges Verzeichnis der Portables inklusiv alles Unterverzeichnisse komplett auf die Zielrechner kopieren. Ich habe Gründe, soviele Portables wie möglich zu benutzen.

Und gerade weil sich diverse Programme einfach alle Endungen "krallen", will ich selbst die Kontrolle haben. Schlimmstes Beispiel ist ja Microsoft selbst, das einem für fast alles "fertige Lösungen" = sprich fürchterliche "Programme" als Vorgaben unterjubelt. Die will ich nämlich auch komplett entfernen und durch Zuweisungen auf vernünftige Programme ersetzen.

Auf einem meiner Bootsysteme (ich benutze meist Multiboot) habe ich gerade feststellen müssen, daß sich hier "Nero" fast alles gekrallt hat. Auch um sowas nachträglich wegzubekommen, geht es nicht ohne Registry, wenn man nicht alles zeitraubend manuell entfernen will.
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#4

AW: Datentypen in der Registry

  Alt 17. Okt 2015, 10:38
ungetestete Idee:
Delphi-Quellcode:
uses Registry;

function RegisterProg(
                      sFileType : String; // wird im Explorer als Typ angezeigt
                      sStandard : String; // Inhalt des Eintrages (Standard) in der Registry
                      sProgram : String; // vollständiger Pfad zum Programm
                      sExt : String // zu verknüpfende Dateiendung
                     ) : Boolean;
var
  Reg : TRegistry;
begin
  Result := True;
  Reg := TRegistry.Create;
  Reg.RootKey := HKEY_CLASSES_ROOT;
  Reg.OpenKey(sExt, True);
  try
    Reg.WriteString('', sFileType);
  except
    Result := False;
  end;
  Reg.CloseKey;
  if Result then begin
    Reg.OpenKey(sFileType, True);
    try
      Reg.WriteString('', sStandard);
    except
      //
    end;
    Reg.OpenKey('shell', True);
    Reg.OpenKey('open', True);
    Reg.OpenKey('command', True);
    try
      Reg.WriteString('',Format('"%s" "%s"',[sProgram,'%1']));
    except
      //
    end;
    Reg.CloseKey;
    Reg.CloseKey;
    Reg.CloseKey;
    Reg.CloseKey;
  end;
  Reg.Free;
end;

// Aufruf:
begin
  RegisterProg('BMP IrfanView','IrfanView','c:\Programme\IrfanView\iview32_.exe','.bmp');
  RegisterProg('JPG IrfanView','IrfanView','c:\Programme\IrfanView\iview32_.exe','.jpg');
  RegisterProg('JPG IrfanView','IrfanView','c:\Programme\IrfanView\iview32_.exe','.jpeg');
end;
Der Aufruf von RegisterProg ließe sich sicherlich auch über eine Ini-Datei (o. ä.) realisieren, so dass die einzelnen Verknüpfungen nicht fest im Programm verdrahtet werden müssen.

Aufbau der INI-Datei:
Code:
[JPEG]
FileType=JPG IrfanView
Standard=IrfanView
Program=c:\Programme\IrfanView\iview32_.exe
Ext=.jpg
[JPEG]
FileType=JPG IrfanView
Standard=IrfanView
Program=c:\Programme\IrfanView\iview32_.exe
Ext=.jpeg
Aufrufroutine bei die Nutzung einer Ini-Datei:
Delphi-Quellcode:
uses IniFiles;

var
      ini : TIniFile;
      sl : TStringList;
      i : Integer;
      sFileType : String;
      sStandard : String;
      sProgram : String;
      sExt : String;
begin
  ini := TIniFile.Create('Verknüpfungen.ini');
  sl := TStringList.Create;
  ini.ReadSections(sl);
  for i := 0 to sl.Count - 1 do begin
    sFileType := ini.ReadString(sl[i],'FileType','');
    sStandard := ini.ReadString(sl[i],'Standard','');
    sProgram := ini.ReadString(sl[i],'Program','');
    sExt := ini.ReadString(sl[i],'Ext','');
    RegisterProg(sFileType,sStandard,sProgram,sExt);
  end;
  sl.Free;
  ini.Free;
end;
und als Konsolenprogramm:
Delphi-Quellcode:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils, Registry, IniFiles, Windows, Classes;

function RegisterProg(
                      sFileType : String; // wird im Explorer als Typ angezeigt
                      sStandard : String; // Inhalt des Eintrages (Standard) in der Registry
                      sProgram : String; // vollständiger Pfad zum Programm
                      sExt : String // zu verknüpfende Dateiendung
                     ) : Boolean;
var
  Reg : TRegistry;
begin
  Result := True;
  Reg := TRegistry.Create;
  Reg.RootKey := HKEY_CLASSES_ROOT;
  Reg.OpenKey(sExt, True);
  try
    Reg.WriteString('', sFileType);
  except
    Result := False;
  end;
  Reg.CloseKey;
  if Result then begin
    Reg.OpenKey(sFileType, True);
    try
      Reg.WriteString('', sStandard);
    except
      //
    end;
    Reg.OpenKey('shell', True);
    Reg.OpenKey('open', True);
    Reg.OpenKey('command', True);
    try
      Reg.WriteString('',Format('"%s" "%s"',[sProgram,'%1']));
    except
      //
    end;
    Reg.CloseKey;
    Reg.CloseKey;
    Reg.CloseKey;
    Reg.CloseKey;
  end;
  Reg.Free;
end;

function ReadIniFile(sIniFile : String) : Boolean;
var
  ini : TIniFile;
  sl : TStringList;
  i : Integer;
  sFileType : String;
  sStandard : String;
  sProgram : String;
  sExt : String;
begin
  Result := FileExists(sIniFile);
  if Result then begin
    WriteLn(Format('%s:',[sIniFile]));
    sl := TStringList.Create;
    ini := TIniFile.Create(sIniFile);
    ini.ReadSections(sl);
    for i := 0 to sl.Count - 1 do begin
      sFileType := ini.ReadString(sl[i],'FileType','');
      sStandard := ini.ReadString(sl[i],'Standard','');
      sProgram := ini.ReadString(sl[i],'Program','');
      sExt := ini.ReadString(sl[i],'Ext','');
      if RegisterProg(sFileType,sStandard,sProgram,sExt) then begin
        WriteLn(Format('Verknuepfung %s wurde erstellt.',[sFileType]));
      end else begin
        WriteLn(Format('Verknuepfung %s konnte nicht erstellt werden.',[sFileType]));
      end;
    end;
    ini.Free;
    sl.Free;
  end;
end;

var
  k : Integer;
begin
  if ParamCount < 1 then begin
    WriteLn('Aufruf:');
    WriteLn(Format('%s Ini-Datei [,Ini-Datei ... ,Ini-Datei]',[ParamStr(0)]));
    Halt(1);
  end;
  for k := 1 to ParamCount do begin
    if not ReadIniFile(ParamStr(k)) then begin
      WriteLn(Format('Die INI-Datei %s wurde nicht gefunden.',[ParamStr(k)]));
    end;
  end;
end.
  Mit Zitat antworten Zitat
delnu
(Gast)

n/a Beiträge
 
#5

AW: Datentypen in der Registry

  Alt 18. Okt 2015, 02:17
Wahnsinn !

Das ist ja schon erheblich mehr als die erhofften Denkanstöße.
Das werde ich mir gleich mal ansehen.

Danke !
  Mit Zitat antworten Zitat
delnu
(Gast)

n/a Beiträge
 
#6

AW: Datentypen in der Registry

  Alt 19. Okt 2015, 22:58
Noch habe ich mich nicht dran gewagt, tatsächlich selbst Verknüpfungen in die Registry zu schreiben.

Aber der Tipp mit INI-Dateien ist wirklich gut.

Anbei mal ein Zwischenstand als Anhang. Das ist alles noch etwas wirr, aber der Zweig HKEY_CLASSES_ROOT wird lesend ausgewertet.

Dazu habe ich mich folgender Quelle bedient: http://www.swissdelphicenter.ch/de/showcode.php?id=1618

Alle Verknüpfungen können nach unmterschiedlichen Kriterien als INI-Datei gespeichert werden.

Außerdem habe ich die Möglichkeit eingebaut, mittels Textdateien, die pro Zeile eine Endung enthalten, zu prüfen, ob es dafür bereits Verknüpfungen gibt. Diese Dateien können nach bestimmten Kriterien angelegt werden, z.B. Audio, Grafik, Dokumente, Video usw.

Ein paar Beispiele sind enthalten.

Leider ist es aber so, daß bei weitem nicht alle zugewiesenen Dateitypen unter HKEY_CLASSES_ROOT gespeichert sind. Die meisten Sachen sind unter HKEY_CURRENT_USER, im Zweig "Software\Microsoft\Windows\CurrentVersion\Explore r\FileExts". Aber wie man das ausliest, habe ich noch nicht rausgefunden.

Vielleicht kann mir da jemand weiterhelfen ?

Ein besonderes Problem dabei sind "OpenWithList" und "OpenWithProgIds" ...

Bevor ich Schreibfunktionen einbaue, möchte ich die Analyse komplettieren. Und bevor es dann soweit ist, muß noch die Möglichkeit eingebaut werden, die vorherigen Werte zu sichern und ggf. wieder herzustellen.

Für jeden weiteren Rat bin ich dankbar.
Angehängte Dateien
Dateityp: zip reg.zip (236,2 KB, 4x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Datentypen in der Registry

  Alt 20. Okt 2015, 10:06
Festinstallierte Protable Programme?
Portables wird nicht fest installiert, denn das ist gegen seine Natür.


Wie oft machst du sowas und wieviele PCs?

Wenn man es öfters und und mehrmals macht, dann erstell dir doch ein eigenes Windows-Setup, wo gleich alles Wichtige drin ist.
Men kann sowas auch durch Klonen der Festplatten erreichen. (machen die großen PC-Vermarkter auch nicht anders)
http://www.com-magazin.de/praxis/win...eren-7641.html
Beim Klonen muß man nur estwas mit den Lizenzen auspassen, bzw. beim ersten Start jeweils eigene Lizenzen einrichten.

http://www.microsoft.com/de-de/licen...e/default.aspx


Von vielen Programmen lassen sich die Setups per Batch ansteuern, womit du Diese sich auch selber richtig installieren lassen kannst.
USB-Stick oder Netzlaufwerk mit den Setups und überall einmal starten.


Auch wenn du es nicht hören wolltest ... Altes Delphi OK, aber wenn die PCs ins Internet gehen können sollen und das sowieso neu installiert wird, dann warum dann ein altes Windows?
Stehen die PCs nur irgendwo gemeinsam rum, dann kannst du es auch mit Terminalserver (Windows) versuchen.
Die Klienten entweder ohne eigenen Internetzugang oder auch gleich mit einem anderen OS.
Da ist es dann auch egal wie alt und leistungsschwach diese PCs sind.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (20. Okt 2015 um 10:12 Uhr)
  Mit Zitat antworten Zitat
delnu
(Gast)

n/a Beiträge
 
#8

AW: Datentypen in der Registry

  Alt 20. Okt 2015, 16:04
Obwohl ich eigentlich nicht vorhatte, themenfremde Beiträge zu kommentieren:

portables nicht installieren, aber Dateien zuweisen, warum ?

Installationen erzeugen unnützen Müll und beim Austauschen der Versionen reicht es, die Dateien in den entsprechenden Verzeichnisse zu ersetzen. Hätte ich welche der neueren (fürchterlichen) Firefox-Versionen fest installiert, hätte ich Probleme.

Mit portables lassen sich auch unterschiedliche Versionen nutzen, indem einfach das Verzeichnis umbenannt wird.

Warum überhaupt selbst zuweisen, statt es durch Programme machen zu lassen ? Microsoft selbst ist wohl das beste schlechte Vorbild für Hersteller anderer Anwenndungen, sich jeden nur denkbaren Dateityp zu krallen und entsprechend in der Regisry vermüllen. Für Audio-Dateien nehme ich z.B. lieber mplayerc statt VLC und mit Nero will ich z.B. nur ganz wenige Dateien geöffnet haben und z.B. die NRG-Dateien nicht standardmässig mit Nero Burning Rom, sondern mit ImageDrive.

Warum alte Delphi-Versionen ?
Als ich noch versucht habe, mit höheren Versionen als Delphi 1 erstellte Programme abwärtskompatibel zu dieser ersten Version zu gestalten, habe ich bemerkt, daß der umgekehrte Weg besser ist, also erst mit alten Versionen beginnen und erst danach auf Kompatibilität mit neuen Versionen herstellen. Momentan benutze ich weitgehend Delphi 5,solange etwas damit funktioniert. Nur wenn ich damit nicht auskomme, weil fremde Quelltexte eine höhere Version erfordern, benutze ich Delphi 7. Je neuer, desto komplexer, größere Exe-Dateien usw.

Und nicht zuletzt ist es unzumutbar, erneut wahnsinnig viel Geld auszugeben, nur weil es etwas Neueres gibt, obwohl das Alte seine Funktionalität natürlich nicht verloren hat und das meiste damit funktioniert.

Warum "veraltete" Windows-Versionen ?
Hätten die Hardwarehersteller sich nicht durch Microsoft nötigen lassen, so daß alle neueren Möglichkeiten bzw. Geräte (z.B. Netzwerk, Scanner, Video) Windows erfordern, wüde ich es mit Sicherheit GAR NICHT benutzen.

Windows 98 SE benötige ich noch für DOS, z.B. Assembler und Turbo Pascal. Im Windows-Modus sind (z.B. mit Delphi 1) noch nicht alle direkten Hardware-Zugriffe gesperrt. Alle späteren Versionen machen es Programmierern schwer. Außerdem gab es bei Windows 98 noch den bei späteren Versionen verschwundenen Midimapper. Der ist darum so wertvoll, weil es damit möglich ist, jedem Midikanal unterschiedliche Zielgeräte zuweisen zu können. Keine spätere Windows-Version bietet dies Möglichkeit mehr.

Windows XP habe ich nur schwer akzeptieren gelernt. Ohne wäre mir die Nutzung bestimmter Hardware leider unmöglich (weil Hardware-Hersteller auch hier wieder der Erpressung durch Winzigweich gefolgt sind) und mit XP lassen sich endlich auch Festplatten-Kapazitäten nutzen, die angeblich schon für Windows 98 hätten gelten müssen.

Warum keine neuen Windows-Versionen ? Je neuer, desto mehr Einschränkungen für den Anwender. Microsoft hat unter "Sicherheit" vor allem immer die eigene gemeint. Als ich mein Notebook kaufte, war Vista drauf. Allein die vielen neuen unnötigen "Dienste" waren mir ein Gräuel. Als mir dann der Konflikt zwischen automatischen Updates und einem Norton-Antivirusprogramm einen Totalcrash verursachte, habe ich nach Treibern für XP gesucht und Vista entsorgt.

Ein Bekannter gab mir eine "Studentenversion" von Windows 7. Nach der Installation war ich entsetzt. Selbst Zusatztools, um z.B. HLP-Dateien lesen zu können und die alte Menüstruktur wenigstens teilweise nachbilden zu können, haben mir keine wirkliche Freude gebracht. Also weg auch damit und XP drauf.

Warum Neues, nur weil es neu ist und alle meinen, sie müßten hinterher rennen, wenn es das Alte tut ?!

Warum keine automatisierte Installation z.B. aus einer ISO-Datei o.ä. ? Weil die Rechner zwar identisch sind, aber anders eingerichtet werden sollen, was bereits bei der Festplatten-Partionierung beginnt. Das einzig Identische sollen die Portables sein.

Übrigens ist die Hardware der alten Rechner neuer als die der meisten meiner anderen - und das für unter 20 € pro Stück.

So, jetzt habe ich alles Genauestens dargelegt und werde mich dazu nicht mehr äussern. Das alles hat nämlich mit dem Thema absolut NICHTS zu tun. Es geht um die Registry und nichts anderes !

Geändert von delnu (20. Okt 2015 um 16:13 Uhr) Grund: Neuformatierung desTextes und Schreibfehlerkorrektur
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#9

AW: Datentypen in der Registry

  Alt 20. Okt 2015, 19:35
Die
Zitat:
Ein besonderes Problem dabei sind "OpenWithList" und "OpenWithProgIds" ...
würde ich ignorieren, dort sind mehrere Auswahlmöglichkeiten für Programme angegeben, aber keine direkten Verknüpfungen, um z. B. eine Datei per Doppelklick sofort mit einem Programm zu öffnen.

Wenn ich das bei meinem XP in der Registry richtig sehe, verweisen die Einträge in den OpenWith... aber wieder auf Einträge unter HKEY_CLASSES_ROOT. Du solltest von daher dort keine neuen bzw. unter HKEY_CLASSES_ROOT nicht zu findende Verknüpfungen entdecken.

Das Auslesen von HKEY_CURRENT_USER, im Zweig "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts" sollte in etwa so funktionieren:
Delphi-Quellcode:
reg.rootkey := HKEY_CLASSES_ROOT;
if reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts', False) then
...
Eigentlich musst Du die Logik, die Du schon implementiert hast nur geringfügig anpassen.
  Mit Zitat antworten Zitat
delnu
(Gast)

n/a Beiträge
 
#10

AW: Datentypen in der Registry

  Alt 20. Okt 2015, 22:34
Hallo !

Danke, daß Du mir meinen Ansatz angesehen hast.

Wenn das mal so einfach wäre mit "Eigentlich musst Du die Logik, die Du schon implementiert hast nur geringfügig anpassen." ...

Leider ist dabei nämlich nichts rausgekommen, obwohl ich Verschiedenes probiert habe.

Allerdings stimmt es (wie ich gerade geprüft habe), daß der Zweig durch
Zitat:
reg.rootkey := HKEY_CURRENT_USER;
if reg.OpenKey('Software\Microsoft\Windows\CurrentVer sion\Explorer\Fileexts', False) then
tatsächlich korrekt geöffnet wird. Zur Kontrolle habe ich mal ShowMessage benutzt.

TypeName wird nicht gefunden, weil nicht vorhanden, entsprechend auch der Rest nicht.
Es werden ausser der Extension keine weiteren Ergebnisse geliefert und darum taucht dann auch keine der gefundenen Extensions in der Gesamtliste auf. Die haben dann allenfalls "Application" und "ProgID", aber die meisten eben nur "OpenWithList" und "OpenWithProgIds".

Die kann ich also leider nicht ignorieren, denn viele meiner Zuweisungen für IrfanView sind nur dort (unter HKEY_CURRENT_USER im von Dir genannten Zweig) eingetragen. Ausserdem möchte ich durchaus wählen können, ob ich z.B. eine HTML-Datei mit Notepad++ öffne oder mit einem der unterschiedlich vielen zur Auswahl stehenden Browser. Wenn mir da also jemand einen Rat geben könnte, wäre das super.

Immerhin habe ich es jetzt (während des Schreibens des Beitrags teste ich) schon soweit geschafft, daß jetzt wenigstens schon die Extensions in die Liste übernommen werden. Aber wie ich an die paar vereinzelten "Application" und "ProgID" kommen soll, weiß ich nicht. Ich habe mal die momentane (noch sehr chaotische, weil unfertige) "Button2Click" als Textdatei angehängt. Einfach die bereits integrierte leere Prozedur ersetzen und im Objektinspektor "visible" auf true setzen.

Vielleicht weißt Du da weiter ? Deine bisherigen Tipps waren jedenfalls schon sehr nützlich. Danke nochmal !

Außerdem habe ich festgestellt, daß die von mir abgewandelte Grundmethode nicht alle Einträge berücksichtigt. Das hatte ich erst gemerkt, nachdem ich die Unit von http://www.delphipraxis.net/64577-re...unktionen.html ausprobiert habe. Die mußte zwar erst etwas fehlerbereinigt werden, aber die dort integrierte Prozedur "WriteExtList" ist gute Arbeit.

Nachtrag: Die hier angehängte Textdatei ist lediglich ein Replacement für eine gleichnamige (aber leere) Prozedur meines oben in der ZIP-Datei "reg.zip" enthaltenen Testes und ergibt (ohne dasselbe) wenig Sinn. Dieser Hinweis erfolgt, weil die Textdatei schon zweimal runtergeladen wurde, die ZIP-Datei aber nur einmal. Also nicht einfach die Textdatei runterladen und denken, die wäre für sich betrachtet irgendwie besonders informativ. Ganz im Gegenteil ! Das ist wirklich nur ein unfertiger Versuch, der bloß zusammen mit dem Testprog Sinn hat.
Angehängte Dateien
Dateityp: txt button2click.txt (3,0 KB, 4x aufgerufen)

Geändert von delnu (21. Okt 2015 um 21:18 Uhr) Grund: Hinweis nachgetragen
  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:53 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