Seite 1 von 3

Neues PB-Dokument erstellen (Explorer-Kontextmenü)

Verfasst: 13.11.2004 18:41
von KeyKon
Kann man irgendwie einstellen das im Menu RechteMaustaste\Neu ein Leeres PB-Document entsteht?

KeyKon

Edit by NicTheQuick: Topic-Titel geändert

Verfasst: 13.11.2004 18:55
von Andre
@Keykon: wie war das nochmal mit aussagekräftigen Thread-Überschriften ? :wink:


Meinst Du mit Deiner Frage den PB-Editor, wenn Du dort die rechte Maustaste drückst ?

Verfasst: 13.11.2004 19:33
von Kristel
Andre hat geschrieben:Meinst Du mit Deiner Frage den PB-Editor, wenn Du dort die rechte Maustaste drückst ?
Nein, er meint den ganz normalen Explorer.

Verfasst: 13.11.2004 22:45
von Lars
Das geht ganz bequem mit dem freien Microsoft Tool Tweak UI.

Der Unterbereich Templates sollte dich etwas schlauer machen :wink:

Verfasst: 13.11.2004 23:46
von Falko
Hiermit sollte es in der Registry manuell möglich sein.

http://www.winfaq.de/faq_html/tip0327.htm

Gruß Falko

Verfasst: 14.11.2004 12:06
von KeyKon
Danke :allright:

Verfasst: 14.11.2004 15:17
von ts-soft
Nach meinen Erfahrungen funktioniert dies nicht, da PB nicht als Dateityp im Sytem registriert ist. Lediglich die Endung wird verknüpft. Sollte es dennoch jemand schaffen bitte Posten, da ich bisher immer scheiterte

Verfasst: 14.11.2004 17:15
von bluejoke
Bei mir hats geklappt.

Ich habe ein leeres PB-Dokument erstellt, und die Datei dann im Register "New" von TweakUI in "ListGadget" gezogen.

Du kannst aber auch eine Datei nehmen, in der was drin steht, das ist, als ob die Datei an die neue Stelle hinkopiert wird.

Simon

Verfasst: 14.11.2004 17:17
von Danilo
ts-soft hat geschrieben:Sollte es dennoch jemand schaffen bitte Posten, da ich bisher immer scheiterte
Um ein leeres Dokument zu erstellen, habe ich jetzt hier
folgendes gemacht:

Code: Alles auswählen

If RegCreateKeyEx_(#HKEY_CLASSES_ROOT,".pb",0,0,#REG_OPTION_NON_VOLATILE,#KEY_ALL_ACCESS,0,@key,@Disposition) = #ERROR_SUCCESS
  Value$ = "PureBasic Source"
  RegSetValueEx_(key,"",0,#REG_SZ,Value$,Len(Value$)+1)
  RegCloseKey_(key)
EndIf

If RegCreateKeyEx_(#HKEY_CLASSES_ROOT,".pb\ShellNew",0,0,#REG_OPTION_NON_VOLATILE,#KEY_ALL_ACCESS,0,@key,@Disposition) = #ERROR_SUCCESS
  Value$ = ""
  RegSetValueEx_(key,"NullFile",0,#REG_SZ,Value$,Len(Value$)+1)
  RegCloseKey_(key)
EndIf


If RegCreateKeyEx_(#HKEY_CLASSES_ROOT,"PureBasic Source",0,0,#REG_OPTION_NON_VOLATILE,#KEY_ALL_ACCESS,0,@key,@Disposition) = #ERROR_SUCCESS
  Value$ = "PureBasic Source"
  RegSetValueEx_(key,"",0,#REG_SZ,Value$,Len(Value$)+1)
  RegCloseKey_(key)
EndIf


If RegCreateKeyEx_(#HKEY_CLASSES_ROOT,"PureBasic Source\shell\open\command",0,0,#REG_OPTION_NON_VOLATILE,#KEY_ALL_ACCESS,0,@key,@Disposition) = #ERROR_SUCCESS
  Value$ = "" ; Chr(34)+OpenFileRequester("PB OPEN COMMAND","PureBasic.exe",".EXE|*.exe",0)+Chr(34)
  RegSetValueEx_(key,"",0,#REG_SZ,Value$,Len(Value$)+1)
  RegCloseKey_(key)
EndIf
Danach kurz warten, bzw. rebooten oder ab- und wieder anmelden,
und ich habe den Eintrag "PureBasic Source" im ContextMenu "New"/"Neu".

Wenn man keine leere Datei möchte, sondern einen bestimmten Inhalt,
dann sollte man folgendes machen:
Den "ShellNew" oder "Templates" Ordner suchen. Auf Win9x
soll das "c:\Windows\ShellNew" sein (bzw. Dein Windows-Path).

Bei mir (engl. Win2k) war es richtig in:
"c:\Documents and Setting\USERNAME\Templates", wobei
USERNAME der Name des Users ist, also "Administrator",
"All Users" oder "Billy".

Dort kopiert man seine TextDatei "PureBasic.pb" rein, mit
dem Inhalt den man haben möchte.

Und dann folgender Code:

Code: Alles auswählen

If RegCreateKeyEx_(#HKEY_CLASSES_ROOT,".pb",0,0,#REG_OPTION_NON_VOLATILE,#KEY_ALL_ACCESS,0,@key,@Disposition) = #ERROR_SUCCESS
  Value$ = "PureBasic Source"
  RegSetValueEx_(key,"",0,#REG_SZ,Value$,Len(Value$)+1)
  RegCloseKey_(key)
EndIf

If RegCreateKeyEx_(#HKEY_CLASSES_ROOT,".pb\ShellNew",0,0,#REG_OPTION_NON_VOLATILE,#KEY_ALL_ACCESS,0,@key,@Disposition) = #ERROR_SUCCESS
  Value$ = "PureBasic.pb"
  RegSetValueEx_(key,"FileName",0,#REG_SZ,Value$,Len(Value$)+1)
  RegCloseKey_(key)
EndIf

If RegCreateKeyEx_(#HKEY_CLASSES_ROOT,"PureBasic Source",0,0,#REG_OPTION_NON_VOLATILE,#KEY_ALL_ACCESS,0,@key,@Disposition) = #ERROR_SUCCESS
  Value$ = "PureBasic Source"
  RegSetValueEx_(key,"",0,#REG_SZ,Value$,Len(Value$)+1)
  RegCloseKey_(key)
EndIf


If RegCreateKeyEx_(#HKEY_CLASSES_ROOT,"PureBasic Source\shell\open\command",0,0,#REG_OPTION_NON_VOLATILE,#KEY_ALL_ACCESS,0,@key,@Disposition) = #ERROR_SUCCESS
  Value$ = "" ; Chr(34)+OpenFileRequester("PB OPEN COMMAND","PureBasic.exe",".EXE|*.exe",0)+Chr(34)
  RegSetValueEx_(key,"",0,#REG_SZ,Value$,Len(Value$)+1)
  RegCloseKey_(key)
EndIf
Das ist die Anleitung von Falkos Link in Code umgesetzt,
und hier funktionierte es wunderbar (habe beides getestet).

Verfasst: 14.11.2004 17:31
von ts-soft
@Danilo
Thanks, werde es gleich ausprobieren