Subj : DES2DIZ.BTM ??? To : Gerald Miller From : Ralf Brinkmann Date : Mon Oct 25 2004 01:04 pm Hi Gerald, GM> It is my hope that someone "captured" the BTM (if he did post it) and GM> I would appreciate it if they could repost it in this echo. what I have here is in German. It's a modified version. Tell me if you need a translation. At the end you will find another file, that adds a file_id.diz TO an archive. ============================================================================== @echo off setlocal unalias * iff "%1." EQ "." .OR. "%#" GT "2" then BEEP text Syntax: "DIZ2DESC [/V|/Q] " Es sind Wildcards erlaubt, z.B. *.ZIP. /V Verbose-Mode, zeigt genau an was passiert. /Q Quiet-Mode, zeigt nichts an (z.B. fuer Batch-Betrieb), vorhandene Description wird kommentarlos Ueberschrieben! Originalautor unbekannt, modifiziert von Robert Zimmer, 25.09.95, nochmals verbessert von Sven Bürger 28.11.98 endtext quit 1 endiff iff "%@upper[%1]" EQ "/V" then set verbose=y shift 1 endiff iff "%@upper[%1]" EQ "/Q" then set quiet=y shift 1 endiff iff "%quiet%" NE "y" then text DIZ2DESC erzeugt aus FILE_ID.DIZ oder Aehnlichem 4DOS-Descriptions endtext endiff for /a:-d-h %DFile in (%1) do gosub Desc goto ende :Desc if "%quiet%" NE "y" echo %DFile wird bearbeitet ... ffind /aH/s/l/v/p/t"%DFile" %@path[%DFile]%_DNAME% >NUL set vorhanden=%_? iff "%vorhanden%" NE "2" then iff "%quiet%" NE "y" then text Datei hat bereits eine Beschreibung. endtext endiff if "%quiet%" NE "y" dir /djkm %DFile if "%quiet%" NE "y" echo. if "%quiet%" NE "y" inkey /K"jn" Ueberschreiben (j/n) ? %%loeschen if "%quiet%" NE "y" echo. if "%loeschen" NE "j" return if "%verbose%" EQ "y" echos ... alte Beschreibung loeschen describe %DFile "" endiff iff "%@ext[%DFile]" EQ "ZIP" .OR. "%@ext[%DFile]" EQ "ARC" .OR. "%@ext[%DFile]" EQ "ARJ" .OR. "%@ext[%DFile]" EQ "LZH" .OR. "%@ext[%DFile]" EQ "EXE" .OR. "%@ext[%DFile]" EQ "RAR" .OR. "%@ext[%DFile]" EQ "ACE" then if "%verbose%" EQ "y" echos ... Beschreibung suchen ... rem gus %DFile file_id.diz desc.sdi files.bbs %2 %_DNAME% %temp%\ /q >&NUL gus %DFile file_id.diz desc.sdi files.bbs %2 %_DNAME% /q >&NUL move desc.sdi %temp%\diz2desc.$$$ >&NUL move file_id.diz %temp%\diz2desc.$$$ >&NUL iff exist %temp%\diz2desc.$$$ then if "%verbose%" EQ "y" echos gefunden ... if "%verbose%" EQ "y" echos umsetzen ... setdos /X-45678 set handle=%@fileopen[%_dname,append,b] set text=%@filewriteb[%handle,13,%@format[-13,%Dfile]] echo Beschreibung wird in die %_DNAME uebertragen... do counter = 0 to %@lines[%temp%\diz2desc.$$$] set string=%@line[%temp%\diz2desc.$$$,%counter] iff "%string" == "" then setdos /X+7 set string=` ` setdos /X-7 endiff set write=%@filewriteb[%handle,%@len[%@format[-39,%string] ],%@format[-39,%string] ] enddo set text=%@filewriteb[%handle,2,%@char[13]%@char[10]] set close=%@fileclose[%handle] setdos /X0 *del /y /z /q /[s0,0] *.* >&nul *attrib /q +h %_DNAME *del %temp%\diz2desc.$$$ %temp%\desc.sdi %temp%\file_id.diz >&NUL else if "%verbose%" EQ "y" echo nicht gefunden endiff endiff Return :ende endlocal ============================================================================== The 2nd file: ============================================================================== @echo off set oh=%@fileopen[file_id.diz,write] set nb=%@filewrite[%oh,%@descript[%1]] set oh=%@fileclose[%oh] if %@ext[%1] = arj goto arj if %@ext[%1] = lzh goto lzh if %@ext[%1] = zip goto zip goto end :arj arj a -jm -e %1 file_id.diz goto end :lzh lha a %1 file_id.diz goto end :zip pkzip -a %1 file_id.diz goto end :end del file_id.diz ============================================================================== I hope I could help you. Best regards, Ralf --- GEcho/32 1.20/Pro * Origin: Police Academy: 49-611-1860516 * 24 h ZyX+V90+ISDN+Fax (2:244/2122) .