AGB  ·  Datenschutz  ·  Impressum  







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

registry.....symbole

Ein Thema von maximi · begonnen am 14. Jun 2003 · letzter Beitrag vom 14. Jun 2003
Antwort Antwort
maximi

Registriert seit: 9. Jun 2003
217 Beiträge
 
Delphi 7 Personal
 
#1

registry.....symbole

  Alt 14. Jun 2003, 19:00
Hallo!!!
Ich probiere gerade nen Monopoly-game aus und man kann im Spiel seine Spielstände abspeichern! Diese Dateien sollen die Endung .mon haben.
So mein Problem ist:
Wenn man die Datei öffnet soll automatisch das Monopoly Spiel geöffnet werden mit den Einstellungen von der Datei und ich möchte das diese Datei ein Symbol hat, wie z.B. mp3 Dateien das Winamp Symbol!!
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#2
  Alt 14. Jun 2003, 19:08
Hallo,

Du musst die Endung im System registrieren, bzw. in der Registry eintragen. Anschliessend musst Du Dein Programm mit Parameter starten können. Sprich die Datei die übergeberden ist, lesen und dementsprechned dann handeln.

Grüsse, Daniel
  Mit Zitat antworten Zitat
maximi

Registriert seit: 9. Jun 2003
217 Beiträge
 
Delphi 7 Personal
 
#3
  Alt 14. Jun 2003, 19:30
Aha, kannst du mir vielleicht ein kleines Bsp zeigen, wie das mit der Reg. funzt???
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#4
  Alt 14. Jun 2003, 19:34
Ich glaube das steht unter anderem in der Code-Library. Desweiteren solltest du was passendes mit der board-Suche finde
Alexander
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#5
  Alt 14. Jun 2003, 19:45
Hallo,

Du musst unter HKEY_CLASSES_ROOT, ein neuen Schlüssel, also Deine Endung, eintragen und mit dem entsprechenden Programm über eine Zeichenfolge dann eintragen.
Wie man grundsätzlich mit der Registry umgeht, siehst Du hier im Forum wenn Du die Suche bemühst.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#6
  Alt 14. Jun 2003, 19:45
Hallo,

Du musst unter HKEY_CLASSES_ROOT, ein neuen Schlüssel, also Deine Endung, eintragen und mit dem entsprechenden Programm über eine Zeichenfolge dann eintragen.
Wie man grundsätzlich mit der Registry umgeht, siehst Du hier im Forum wenn Du die Suche bemühst.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#7
  Alt 14. Jun 2003, 19:47
Moin Maximi,

falls Du schon mal einen Blick in die Registry geworfen hast, wird Dir vielleicht der Key HKEY_CLASSES_ROOT aufgefallen sein.
In diesem sind, u.a., alle bislang registrierten Datentypen verzeichnet.

Als erstes brauchst Du einen Eintrag für Deinen Typen als .mon

HKEY_CLASSES_ROOT\.mon

hierin wird jetzt ein Standardwert (String) erzeugt (als Name muss ein Leerstring verwendet werden) der als Key für die weiteren Informationen dient, z.B. maximimonfile.
Dieser Wert wird jetzt auch als Key unter HKCR angelegt, so dass Du

HKEY_CLASSES_ROOT\maximimonfile

als Key hast.

Unter diesem Key werden jetzt die eigentlichen Informationen gespeichert. Da Du ein eigenes Icon benötigst musst Du einen Key DefaultIcon erzeugen, und hier als Standardwert den Pfad zu der Datei angeben, die das Icon enthält, sowie die Iconnummer (null basiert) in dieser Datei, abgetrennt mit einem Komma.

Ausserdem muss unter maximimonfile noch eine Keystruktur angelegt werden, so dass Du hinterher

HKEY_CLASSES_ROOT\maximimonfile\shell\open\command

hast.
In dem command Key wird nun wieder ein Standardwert angelegt, der den Pfad zu Deinem Programm (eingeschlossen in ") gefolgt von einem Blank und "%1" enthält, damit nicht nur das Programm gestartet, sondern auch ein Parameter übergeben wird.
Wichtig sind die doppelten (!) Anführungsstriche, damit eventuelle Blanks im Pfad nicht zu unangenehmen Überraschungen führen.
Alle Standardwerte die hier einzutragen sind, sind Strings.

Fertig sähe dass dann so aus:

HKEY_CLASSES_ROOT\.mon
Wertname: ''
Wert : maximimonfile

HKEY_CLASSES_ROOT\maximimonfile\DefaultIcon
Wertname: ''
Wert : "C:\Pfad\zu\der\Datei\mit\dem\Icon\Monopoly.ex e",0

HKEY_CLASSES_ROOT\maximimonfile\Shell\Open\Command
Wertname: ''
Wert : "C:\Pfad\zu\der\Datei\mit\dem\Icon\Monopoly.ex e" "%1"

Man kann natürlich noch eine Ganze Menge mehr in diesem Bereich tun, aber für den von Dir genannten Zweck reicht das hier schon.

Weitere Einzelheiten kannst Du im PSDK oder auf MSDN unter
Shell Basics: Extending the Shell, Creating a File Association
nachlesen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
maximi

Registriert seit: 9. Jun 2003
217 Beiträge
 
Delphi 7 Personal
 
#8
  Alt 14. Jun 2003, 19:56
Ja, halbwegs verstanden, aber wie bringe ich das in einen Delphi-Code???
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#9
  Alt 14. Jun 2003, 19:59
Moin maximi,

dazu ist für diesen Zweck TRegistry bestens zu gebrauchen.
Und dafür solltest Du hier reichlich Beispiele finden.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort


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 10:30 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