Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Datei beim Öffnen per Batch auf bestimmten Inhalt überprüfen, ggf. editieren, speichern und dann öffnen möglich?

Frage Entwicklung Batch & Shell

Mitglied: SvennyW

SvennyW (Level 1) - Jetzt verbinden

08.11.2006, aktualisiert 05.01.2007, 10470 Aufrufe, 13 Kommentare

Grüsst euch!

Bin bisher kein großer Programmierer, kann ja aber noch werden *g*, ein Anfang wäre evtl. mit der Lösung des folgenden Problemchens gemacht:

Ich habe verschiedene HPGL-Files, welche mit verschiedenen Programmen und Druckern/Plottern Probleme machen.
Nun schwebt mir vor, die Dateien vor, bzw. bei dem Öffnen, auf einen bestimmten Inhalt hin überprüfen zu lassen und evtl. einige Zeilen aus dem File löschen zu lassen.

Sollte in etwa wie folgt von statten gehen: Doppelklick auf die Datei (öffnet normaler Weise ja verknüpftes Programm) startet Routine die das File überprüft ob dort etwas ähnliches drin steht wie Begin Job....dann jede Menge ASCI.....und dann End Job.
Wenn dies nun vorhanden ist, sollte alles was zwischen, incl. des gesuchten Textes, Beginn Job bis End Job gelöscht werden und die Datei überschrieben werden. Anschliessend soll das damit verknüpfte Programm gestartet werden. Alternativ evtl noch eine Abfrage eingebaut werden, mit welchem der zur Auswahl stehenden Programme die Datei geöffnet werden soll.

Geht so etwas ...... ohne sich dabei ein Loch ins Knie bohren zu müssen????

Vielen Dank schon mal vorab.


SvennyW
Mitglied: bastla
09.11.2006 um 00:27 Uhr
Hallo SvennyW!

Das folgenden VBScript kann wie folgt verwendet werden:
Speichere es mit beliebigem Namen.vbs in einen Ordner Deiner Wahl (zB "C:\Prog\HPGL.vbs").
Gehe im Explorer unter "Extras / Ordneroptionen" zum Register "Dateitypen", wähle dort den Eintrag für "HPGL" aus und klicke auf "Erweitert".
Wähle die Aktion "open" und klicke auf "Bearbeiten..."
Trage als "Anwendung für diesen Vorgang" ein:
01.
WScript.exe "C:\Prog\HPGL.vbs" %1
OK / OK / Schließen

Ab jetzt sollte beim Doppelklicken auf eine .HPGL-Datei das Script starten, wobei die ursprüngliche Datei als Sicherungskopie mit dem Zusatz ".bak" gespeichert wird. Für den Fall, dass keine Sicherungskopie gewünscht sein sollte, bitte die Anweisung im Code gegen Ende des Scripts befolgen!

Für die Bearbeitung der neue Datei kann aus den am Anfang des Scripts definierten Programmen gewählt werden. Anzupassen sind die Anzahl der Programme in der ersten Zeile (derzeit 3) sowie deren Beschreibungen und Pfade (analog zu den Beispielen). Die Programmnummer "0" ist für einen Abbruch der (Nach-)Bearbeitung reserviert. Die Nummer des Standardprogrammes ist bei "sDefault = " anzugeben.
01.
'HPGL.vbs 
02.
Dim sProg(3), sProgPath(3) 
03.
sProg(0) = "Abbruch" 
04.
sProg(1) = "Notepad" : sProgPath(1) = """C:\Windows\notepad.exe""" 
05.
sProg(2) = "Wordpad" : sProgPath(2) = """C:\Programme\Windows NT\Zubehör\wordpad.exe""" 
06.
sProg(3) = "HPGL-Konverter": sProgPath(3) = """C:\Programme\HPGLConverter\HPGLConverter.exe""" 
07.
sDefault = 1 
08.
 
09.
sFile = WScript.Arguments(0) 
10.
sBegin = "Begin Job" 
11.
sEnd = "End Job" 
12.
sOldFile = sFile & ".bak" 
13.
 
14.
If Instr(sOldFile, "\") Then 
15.
	sOldFileName = Mid(sOldFile, InstrRev(sOldFile, "\") + 1) 
16.
Else 
17.
	sOldFileName = sOldFile 
18.
End If 
19.
 
20.
Set fso = WScript.CreateObject("Scripting.FileSystemObject") 
21.
If fso.FileExists(sOldFile) Then fso.DeleteFile(sOldFile) 
22.
Set oOldFile = fso.GetFile(sFile) 
23.
oOldFile.Name = sOldFileName 
24.
 
25.
Set oOldFile = fso.OpenTextFile(sOldFile, 1) 
26.
Set oNewFile = fso.OpenTextFile(sFile, 2, True) 
27.
bKeep = True 
28.
 
29.
Do While Not oOldFile.AtEndOfStream 
30.
	sLine = oOldFile.ReadLine 
31.
	If bKeep Then 
32.
		sTempLine = sLine 
33.
	Else 
34.
		sTempLine = "" 
35.
	End If 
36.
	iPos = Instr(sLine, sBegin) 
37.
	If iPos Then 
38.
		sTempLine = Left(sLine, iPos -1) 
39.
		bKeep = False 
40.
	End If 
41.
	If Not bKeep Then 
42.
		iPos = Instr(sLine, sEnd) 
43.
		If iPos Then 
44.
			sTempLine = sTempLine & Mid(sLine, iPos + Len(sEnd)) 
45.
			bKeep = True 
46.
		End If 
47.
	End If 
48.
	If sTempLine <> "" Then oNewFile.WriteLine sTempLine 
49.
Loop 
50.
 
51.
oOldFile.Close 
52.
oNewFile.Close 
53.
 
54.
'Um die Sicherungskopie zu löschen, in der nächsten Zeile das Apostroph am Anfang entfernen! 
55.
'fso.DeleteFile(sOldFile) 
56.
 
57.
sProgText = "" 
58.
For i = 0 To UBound(sProg) 
59.
	sProgText = sProgText & i & " - " & sProg(i) & vbCrLF 
60.
Next 
61.
 
62.
Do 
63.
	iWahl = CInt(InputBox(sProgText, "Bitte Programm wählen ...", sDefault)) 
64.
Loop Until iWahl <= UBound(sProg) 
65.
 
66.
If iWahl <> 0 Then 
67.
	Set Sh = CreateObject("WScript.Shell") 
68.
	Sh.Run sProgPath(iWahl) & " " & Chr(34) & sFile & Chr(34), 1 ,0 
69.
End If
Have fun!
bastla

P.S.: Meinem Knie geht's noch gut
Bitte warten ..
Mitglied: SvennyW
09.11.2006 um 21:34 Uhr
Servus Bastla!

Verflixt noch eins - das ist der Gipfel: wie zum Geier soll ich jemals ein anständiger Programmierer aus mir werden, wenn Du mir hier gleich alles als fertige Lösung anbietest????

Vielen herzlichen Dank für das Teil!!!! Du glaubst nicht wie froh ich bin, gelesen zu haben dass das Knie noch tut....ich hatte das Schlimmste befürchtet *g*.

Jetzt muss ich mir das mal noch genau in Ruhe ansehen, was und wie das Progrämmle das alles machen will.....
...ich hab das vorhin im Büro mal noch kurz etwas auf meine Bedürfnisse angepasst. Aber so 100%-ig das machen was ich will tut es nicht. Das größte Problem dabei ist aber glaub ich, das vernünftige Einlesen der HPGL-Datei. Die Dinger lassen sich nicht mit jedem Editor ansehen, weil das nicht wirkliche Textfiles sind. Da hab ich so meine Probleme mit...

Hast Du dazu nen Tipp? Mir scheint, Du hattest auch schon des Öfteren Berührungspunkte mit HPGL-Files?

Ein andreres Problem ist, dass mir das Teil teilweise den kompletten Dateiinhalt gelöscht hat.
Liegt vermutlich daran, dass das Ende nicht gefunden wurde? Wird dann alles rausgeworfen?


Du hast mich übrigens auf ne Idee gebracht, welche mir schon länger im Kopf rumschwirrt und die ich die Tage umsetzen werde. Es gibt ja jede Menge Dateitypen und die zugehörigen Programme dazu. Meist vergess ich immer, dass ich das entsprechende File ja gar nicht mit dem dazu verknüften Programm öffnen wollte, sondern mit irgendetwas anderem. Merke ich natürlich immer erst, wenn das Progamm schon am Laden ist....was ab und zu auch dauert... Ähnlich der Abfrage die Du da gebastelst hast, werd ich mir hier einige Abfragen basteln.

Echt super!!! Vielen Dank nochmal.


Grüße

SvennyW
Bitte warten ..
Mitglied: bastla
09.11.2006 um 21:54 Uhr
Hallo SvennyW!

Fast hatte ich's befürchtet, dass es nicht ganz so einfach sein würde.

Mir scheint, Du hattest auch schon des Öfteren Berührungspunkte mit HPGL-Files?
Leider nein, sonst hätte ich schon gewusst, dass es mit Zeile einlesen / Zeile untersuchen / Zeile (bzw Teil der Zeile bis vor "Begin Job" oder auch Teil der Zeile nach "End Job" rausschreiben) nix wird. Vermutlich sind Zero-Bytes in den Files enthalten, und da VBScript vorrangig für das Handling von Textdateien ausgelegt ist, hakt es da ein wenig.

Aber ich werd mir schon (von Google) was einfallen lassen - kann aber ein paar Minuten dauern ...

Grüße
bastla
Bitte warten ..
Mitglied: SvennyW
09.11.2006 um 22:58 Uhr
Hallöchen dem Bastla!

Nunu.....mach Dir mal damit keinen Stress. Das hat mir echt schon mal viel geholfen.
Das mit den HPGL-Files ist schwer unterschiedlich. Je nachdem für welchen Plotter und mit welchen Treibern die Dinger erstellt wurden ist das reines Textfile oder auch nicht. Genau das ist es, was mir Probleme macht. Erzeugt für einen ganz bestimmten Plotter bekommen diese Teile einen Header, welche die für sämtliche (guten) Programme und andere Plotter unbrauchbar macht. Genau diesen Header möchte ich automatisiert entfernen lassen.

Bisher bin ich noch nicht so wirklich dahintergestigen mit welchem Programm ich die vernünftig bearbeiten kann. Notepad, Wordpad und Textpad haben damit Probleme. Der im TotalCommander integrierte könnte das, soweit ich das seh. An den kommt man aber irgendwie nicht ran ohne das Programm zu starten.
Ich hab schon einige händisch bearbeitet...ist aber schon ne zeitlang her...muss ich nochmal versuchen.


Grüße

SvennyW

P.S.: wenn das helfen würde, und Du Intresse dran hast, könnte ich Dir auch ein Bsp.-File schicken.
Bitte warten ..
Mitglied: SvennyW
15.11.2006 um 21:11 Uhr
So, ein "Hallo" zusammen!

Der Bastla, zwischenzeitlich mein ganz persönlicher Held, war in der letzten Woche nicht ganz untätig und hat mir hier ein Script gebastelt, welches ich euch natürlich nicht vorenthalten will. Möglicher Weise hat ja der Eine oder Andere ein ähnliches Problem oder aber auch nen anderen Lösungsansatz.

Leider, sorry lieber Bastla, bin ich immer noch nicht dazu gekommen, es am lebenden Objekt, sprich im Büro zu testen, wo ich die ganzen Programme zur Verfügung habe.

Der Trockentestlauf auf die Schnelle hat aber folgedes Problem ergeben:

1. Kann es sein, dass lange Datei- bzw. Verzeichnisnamen nicht verarbeitet werden können? Der Versuch die editierte Datei anschließend zu öffnen wird mit der Fehlermeldung kommentiert, dass die Datei nicht auffindbar sei?

2. Wenn die Startmarkierung nicht gefunden wird, wird eine Meldung ausgegeben. Ist, sagen wir mal zu Testzwecken okay, für den "täglichen Einsatz" jedoch, sollte das alles ganz dezent und für den Benutzer nicht merkbar im Hintergrund laufen. Wenn die Start- und Endmarkierungen gefunden werden, soll der entsprechende Inhalt eben gelöscht werden, wenn nicht, dann eben die vorhandene, originale Datei, geöffnet werden, ohne dass davon eine Sicherungskopie gemacht wird.

So, nun aber auch noch das versprochene Script vom Bastla:


01.
 Dim sProg(12), sProgPath('HPGL.vbs 
02.
 'Version 1.1  
03.
 'mit (hoffentlich) besserem Handling von Binärdaten 
04.
  
05.
 Dim sProg(12), sProgPath(12) 
06.
 sProg(0) = "Abbruch" 
07.
 sProg(2) = "Wordpad" : sProgPath(2) = """C:\Programme\Windows NT\Zubehör\wordpad.exe""" 
08.
 sProg(3) = "Textpad" : sProgPath(3) = """C:\Programme\Textpad\Txtpad32.exe""" 
09.
 sProg(4) = "Tiny Hexer": sProgPath(4) = """C:\Programme\Tiny Hexer\mpth.exe""" 
10.
 sProg(5) = "SPLOT": sProgPath(5) = """C:\Programme\Splot32\SPLOTW32.EXE""" 
11.
 sProg(6) = "Imagination": sProgPath(6) = """C:\Programme\Spicer\Image\Image.exe""" 
12.
 sProg(7) = "CSSPlotView": sProgPath(7) = """C:\Programme\CSS > PlotView\CSSPlotView.exe""" 
13.
 sProg(8) = "Plan-View": sProgPath(8) = """C:\Programme\Planview""" 
14.
 sProg(9) = "Plot-Vision": sProgPath(9) = """C:\Programme\Torro-> Softworks\PlotVision\plotvision.exe""" 
15.
 sProg(10) = "takview2": sProgPath(10) = """C:\Programme\TakView2\takView2.exe""" 
16.
 sProg(11) = "viewplot": sProgPath(11) = """C:\Programme\viewplot\viewplot.exe""" 
17.
 sProg(12) = "ViewCompanion": sProgPath(12) = """C:\Programme\ViewCompanion Pro\viewcompanion.exe""" 
18.
  
19.
 sDefault = 4 
20.
  
21.
 sFile = WScript.Arguments(0) 
22.
 sBegin = "*OceJobBegin" 
23.
 sEnd = "*OceJobData" 
24.
 sOldFile = sFile & ".bak" 
25.
  
26.
 Set fso = WScript.CreateObject("Scripting.FileSystemObject") 
27.
  
28.
 'gesamte Datei in binDataOld einlesen 
29.
 lSize = fso.GetFile(sFile).Size 
30.
 Set oOldFile = fso.OpenTextFile(sFile, 1) 
31.
 binDataOld = oOldFile.Read(lSize) 
32.
 oOldFile.Close 
33.
  
34.
 iPos1 = Instr(binDataOld, sBegin) 
35.
 If iPos1 Then 'Startstring gefunden 
36.
  
37.
     iPos2 = Instr(iPos1, binDataOld, sEnd) 
38.
     If iPos2 Then 'Endstring gefunden 
39.
  
40.
 	'Sicherungskopie erstellen 
41.
 	 'bereits vorhandene Sicherungskopie löschen 
42.
 	If fso.FileExists(sOldFile) Then fso.DeleteFile(sOldFile) 
43.
  	 'Dateinamen isolieren 
44.
		If Instr(sOldFile, "\") Then 
45.
 			sOldFileName = Mid(sOldFile, InstrRev(sOldFile, "\") + 1) 
46.
 		Else 
47.
 			sOldFileName = sOldFile 
48.
 		End If 
49.
 		 'Datei umbenennen 
50.
 		Set oOldFile = fso.GetFile(sFile) 
51.
 		oOldFile.Name = sOldFileName 
52.
 		 
53.
 		'neue Datei erstellen 
54.
 		Set oNewFile = fso.OpenTextFile(sFile, 2, True) 
55.
 		oNewFile.Write Left(binDataOld, iPos1 - 1) & Mid(binDataOld, iPos2 + Len(sEnd)) 
56.
 		'Um zB nur bis VOR die Endemarkierung ("*OceJobData") zu löschen, das " + Len(sEnd)" weglassen; 
57.
 		'um ZUSÄTZLICH auch die 2 Chars (10 und 27)  nach der Endmarkierung zu entfernen, " + Len(sEnd) + 2" verwenden. 
58.
 		oNewFile.Close 
59.
 		 
60.
 	Else 
61.
 		MsgBox "Endmarkierung nicht gefunden!", 16 
62.
 	End If 
63.
 Else 
64.
 	MsgBox "Startmarkierung nicht gefunden!", 16 
65.
 End If 
66.
  
67.
 'Um die Sicherungskopie zu löschen, in der nächsten Zeile das Apostroph am Anfang entfernen! 
68.
 'fso.DeleteFile(sOldFile) 
69.
  
70.
 'Menütext erzeugen 
71.
 sProgText = "" 
72.
 For i = 0 To UBound(sProg) 
73.
     sProgText = sProgText & i & " - " & sProg(i) & vbCrLF 
74.
 Next 
75.
  
76.
 'Eingabe Menüpunkt 
77.
 Do 
78.
     iWahl = CInt(InputBox(sProgText, "Bitte Programm wählen ...", sDefault)) 
79.
  Loop Until iWahl <= UBound(sProg) 
80.
  
81.
 'neue Datei an gewähltes Programm übergeben 
82.
 If iWahl <> 0 Then 
83.
     Set Sh = CreateObject("WScript.Shell") 
84.
     Sh.Run sProgPath(iWahl) & " " & Chr(34) & sFile & Chr(34), 1 ,0 
85.
 End If
Viele Grüße

SvennyW
[Edit Biber] Habe den Code mal als <code> umformatiert wegen der Einrückungen. [/Edit Biber]
Bitte warten ..
Mitglied: bastla
15.11.2006 um 21:27 Uhr
Hallo Svenny!

Zu 1. Kann leider sein; mit Anführungszeichen müsste es gehen:
01.
WScript.exe "C:\Prog\HPGL.vbs" "%1"
Zu 2. Einfach die jeweiligen Zeilen mit "MsgBox ..." löschen, schon passiert - nichts.
(Das "Else" davor kann dann natürlich auch weg.)

Grüße
bastla
Bitte warten ..
Mitglied: SvennyW
20.11.2006 um 14:30 Uhr
Hallo Bastla!

So, hab nun das Script mal einbebaut und soweit getestet.
Funktioniert einwandfrei!
Bis auf ne Kleinigkeit, die allerdings vermutlich nicht am Script liegt:
einige Programme finden die Datei nicht, was mit dem Fehler "f_open error 1" - " Datei nicht gefunden "G:\Progra~1\blabla~1\xyz.plt" kommentiert wird.
Ich vermute, dass manche Programme bei der Übergabe Probleme mit den langen Dateinamen haben. Ist das möglich dass es da Unterschiede von Programm zu Programm gibt?

Dann noch eine ganz andere Frage zur Installation von diesem Thema:
Wäre es möglich, das ganze in einer Routine installieren zu lassen, welche auch gleich die Dateiverknüpfungen richtig setzt?


Viele Grüße

SvennyW
Bitte warten ..
Mitglied: bastla
20.11.2006 um 16:55 Uhr
Hallo Sven!

einige Programme finden die Datei nicht, was mit dem Fehler "f_open error 1" - " Datei nicht gefunden "G:\Progra~1\blabla~1\xyz.plt" kommentiert wird.
Ich vermute, dass manche Programme bei der Übergabe Probleme mit den langen Dateinamen haben. Ist das möglich dass es da Unterschiede von Programm zu Programm gibt?
Kann ich leider auch nicht sagen - Leerstellen sollten aber eigentlich nicht stören, da ich beim Sh.Run den Dateinamen unter Anführungszeichen [Chr(34)] setze ...

Dann noch eine ganz andere Frage zur Installation von diesem Thema:
Wäre es möglich, das ganze in einer Routine installieren zu lassen, welche auch gleich die Dateiverknüpfungen richtig setzt?
Sofern die Script-Datei auf jedem Rechner den gleichen Speicherort erhält, könnte man die Dateiverknüpfung aus der Registry exportieren und auf den Zielrechnern importieren. Die entsprechenden Einträge kannst Du über eine Suche nach "hpgl" finden.

Bei mir habe ich (absichtlich für das Testen) den Typ "hplg" genannt (gab es noch nicht, und Vorsicht ist die Mutter der Porzellankiste), das Script in "C:\Prog" installiert und dazu folgende Einträge gefunden:
01.
Windows Registry Editor Version 5.00 
02.
 
03.
[HKEY_CLASSES_ROOT\.hplg] 
04.
@="hplg_auto_file" 
05.
 
06.
[HKEY_CLASSES_ROOT\hplg_auto_file] 
07.
@="" 
08.
"EditFlags"=dword:00000000 
09.
"BrowserFlags"=dword:00000008 
10.
 
11.
[HKEY_CLASSES_ROOT\hplg_auto_file\shell] 
12.
@="" 
13.
 
14.
[HKEY_CLASSES_ROOT\hplg_auto_file\shell\open] 
15.
 
16.
[HKEY_CLASSES_ROOT\hplg_auto_file\shell\open\command] 
17.
@="WScript.exe \"C:\\Prog\\HPGL.vbs\" \"%1\"" 
18.
 
19.
[HKEY_CLASSES_ROOT\hplg_auto_file\shell\open\ddeexec] 
20.
 
21.
[HKEY_CLASSES_ROOT\hplg_auto_file\shell\open\ddeexec\Application] 
22.
@="HPGL" 
23.
 
24.
[HKEY_CLASSES_ROOT\hplg_auto_file\shell\open\ddeexec\Topic] 
25.
@="System" 
26.
 
27.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.hplg] 
28.
@="hplg_auto_file" 
29.
 
30.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\hplg_auto_file] 
31.
@="" 
32.
"EditFlags"=dword:00000000 
33.
"BrowserFlags"=dword:00000008 
34.
 
35.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\hplg_auto_file\shell] 
36.
@="" 
37.
 
38.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\hplg_auto_file\shell\open] 
39.
 
40.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\hplg_auto_file\shell\open\command] 
41.
@="WScript.exe \"C:\\Prog\\HPGL.vbs\" \"%1\"" 
42.
 
43.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\hplg_auto_file\shell\open\ddeexec] 
44.
 
45.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\hplg_auto_file\shell\open\ddeexec\Application] 
46.
@="HPGL" 
47.
 
48.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\hplg_auto_file\shell\open\ddeexec\Topic] 
49.
@="System" 
50.
 
51.
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.hplg] 
52.
 
53.
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.hplg\OpenWithList] 
54.
"a"="HPGL.vbs" 
55.
"MRUList"="ba" 
56.
"b"="notepad.exe" 
57.
 
58.
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.hplg\OpenWithProgids] 
59.
"hplg_auto_file"=hex(0):
Ich komm leider derzeit nicht zum Testen und kann daher nicht mit Sicherheit sagen, ob das schon alle relevanten Einträge sind - falls ja, könnte man sie als ".reg"-Datei speichern und auf den Zielrechnern von Hand (Doppelklick und OK genügt) oder auch per Batch ("reg import") installieren.

Grüße
bastla

[Edit] Auf Variante mit "%1" geändert. [/Edit]
Bitte warten ..
Mitglied: SvennyW
21.11.2006 um 16:09 Uhr
Hallo Bastla!

Das sieht ganz gut aus soweit....
...aber sag mal, die Einträge aus der Registry, welche Du da so schön säuberlich aufgelistet hast, bekommst Du die so bei der Suche ausgeworfen??? Oder wie machst Du das??? Wenn ich das über "regedit" laufen lasse, habe ich links den Verzeichnisbaum und die Suche bleibt dann immer dort stehen wo der entsprechende Eintrag gefunden wird....
nix zu sehen in der Art wie Du das hier dargestellt hast.....*grübel*

Danke und Gruß

Sven

P.S.: hab Dein Script, wie schon angekündigt, in abgewandelter Form zum Öffnen auch für andre Dateitypen eingebaut, welche ich des Öfteren verwende und dafür mehrere Programme zur Verfügung habe. Echt super Sache!!!!
Bitte warten ..
Mitglied: bastla
21.11.2006 um 16:24 Uhr
Hallo Sven!

... Einträge aus der Registry, ..., bekommst Du die so bei der Suche ausgeworfen??? Oder wie machst Du das???
Einfach alles, was "verdächtig" erscheint, im "Verzeichnisbaum" markieren und mit "Datei / Exportieren..." in einzelne ".reg"-Dateien schreiben und dann mit einem Texteditor zusammenfügen (zur Sicherheit dafür sorgen, dass am Anfang "Windows Registry Editor Version 5.00" und am Ende 2 Leerzeilen in der fertigen Datei stehen).
Kurze Tests in der Zwischenzeit haben ergeben:
  • Die letzten 3 Keys oben sind wohl nicht erforderlich.
  • Übertragen von XP auf XP: klappt
  • Beim Übertragen von XP auf W2K wurde immer eine Umwandlung in kurze Dateinamen vorgenommen.
Ich würde daher empfehlen, zur Sicherheit je Betriebssystem einmal von Hand die Einträge zu machen und dann jeweils nach der oben gezeigten Methode ".reg"-Dateien zu erstellen.
Echt super Sache!!!!
My pleasure.

Grüße
bastla
Bitte warten ..
Mitglied: SvennyW
05.01.2007 um 12:56 Uhr
Hallo und ein gutes und gesundes Neues allen zusammen!

Ganz spezielle Wünsche an den Bastla - Dein Script hat mir, in einigen abgewandelten Versionen schon einige gute Dienste geleistet.
Programmieren kann ich selbst leider immer noch nicht mehr oder besser*g* - in Anbetracht der irre guten Hilfestellungen hier es allerdings fraglich ob ich das je können muss *g*.



Grüße

SvennyW
Bitte warten ..
Mitglied: bastla
05.01.2007 um 13:43 Uhr
Hallo Svenny!

Dir auch alles Gute - und was das Programmieren anlangt, so kann ich es nur empfehlen: Es macht nämlich auch Spaß, wenn zur Abwechslung mal der Rechner macht, was ich will ...

Grüße
bastla
Bitte warten ..
Mitglied: SvennyW
05.01.2007 um 16:34 Uhr
Hallo bastla!

Danke schön!
Dass der Rechner mal das macht was ich will, wäre ein guter Gedanken-Ansatz.

Scheitert allerdings schon daran, dass sich mein Hauptrechner über die Feiertage verabschiedet hat *g*.

Prinzipiell komm ich zeitlich nicht über Varianten-Programmierung für CAD-Anwendung nicht hinaus, wobei das eher Erstellung mit paar Berechnungen und if-then-Schlaufen ist als Programmierung....

So long, cya

Svenny
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Basic
gelöst Mit Visual Basic Batch Datei öffnen (26)

Frage von Flodsche zum Thema Basic ...

Batch & Shell
Neuere Datei per Batch ausfinding machen (2)

Frage von chattie zum Thema Batch & Shell ...

Microsoft Office
gelöst Excel 2010 Zellen mit bestimmten Inhalt mit Makro formartierten (5)

Frage von packmann2016 zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...