' Given a folder name, will create an "index.htm" for the folder. ' The index.htm file will be placed in the folder and will replace ' any existing index.htm file. Icons with ".gif" file extensions ' will also be created and can be placed in the same folder or in ' a separate common images folder. Option Explicit Const INDEX_FILE = "index.html" 'Set to name of desired index web page Const MAKE_PARENT_LINK = True 'Do you want a link to "../" for the parent directory? 'All below constants may be empty strings Const HEADER_FILE = "" 'Set to name of file whose text will be inserted top of page Const FOOTER_FILE = "" 'Name of file whose text will be appended to bottom of page Const GRAPHIC_PREFIX = "index_icon_" 'Prefixed to graphics like "index_icon_xls.gif" instead of just "xls.gif". Unique name essential if graphics will be in indexed folder." Const DISK_GRAPHIC_PATH = "" 'If used, must have trailing backslash. Location where graphic files are written to disk. Leave blank to write in indexed folder. Const WEB_GRAPHIC_PATH = "" 'LEAVE BLANK. Automatically calculated. If used, must have trailing backslash. Only use if disk and web paths are unrelated. Script will display message telling you when you need this. Dim blnGoodFile Dim str000, strAUDIOCD, strAVI, strBARCODE, strBAS, strBAT Dim strBMP, strCD, strCDR, strCHM, strCLASS, strDLL, strDOC Dim strEML, strEXE, strFILM, strFIREFOX, strFLD, strFLOPPY Dim strFORM, strGRAPH, strHLP, strIE, strINI, strINSTALL Dim strISO, strJAVA, strMDB, strMID, strMP3, strMPLAYER Dim strPDB, strPDF, strPHP, strPPT, strPRC, strPS, strREAL Dim strREG, strSLN, strSNP, strSQL, strSWF, strSXC, strSXD Dim strSXM, strSXW, strTTF, strTEXT, strTXT, strUP, strVBP Dim strVBS, strVCF, strVCS, strVDP, strVS, strWAV, strWMV Dim strWRI, strWSC, strXLS, strXML, strZIP Dim strFileInfo() Dim strFolderInfo() Dim strIconFile, strIconHexData, strIconLink, strFileLink, strFileName, strFileSize, strFileModified Dim strFileExtension, strStringName, strDirectory Dim dic Dim fs Dim strIndex 'As String Dim fil 'As Scripting.Files Dim fils 'As Scripting.File Dim fol 'As Scripting.Files Dim fols 'As Scripting.File Dim intCounter 'As Integer Set fs = CreateObject("Scripting.FileSystemObject") 'Get the folder we will be creating an index for If Wscript.Arguments.Count = 0 Then MsgBox "Drop a directory on this script" Wscript.Quit 1 End If strDirectory = WScript.Arguments(0) If Not fs.FolderExists(strDirectory) Then MsgBox "Drop a DIRECTORY on this script." Wscript.Quit 1 End If If WEB_GRAPHIC_PATH = "" Then If RelativePath(strDirectory, DISK_GRAPHIC_PATH) = "" Then MsgBox "I can't create a relative path from """ & strDirectory & """ to """ & DISK_GRAPHIC_PATH & """. Either fix these paths or define a value for the WEB_GRAPHIC_PATH constant." WScript.Quit 1 End If End If If fs.FileExists(fs.GetAbsolutePathName(fs.BuildPath(strDirectory, INDEX_FILE))) Then If MsgBox ("Replace the existing " & INDEX_FILE & "?", 4) = vbNo Then Wscript.Quit 1 End If 'Hex-encoded GIF icon data str000 = "47494638396110001000B30000040604048604848684C4C6C40406FCFCFEFCFC0604FCFE04CCCECC291CCC57F4127C7700FF0085FF0099FF00E2FF007721F90400000000002C000000001000100003044CB01441AB9578E68CC4F69B3468181802285086D9A04A26EBAE06968A2F6918001FA8889C875070A5543398844000340F4861217A2C4AA70001A210E45E59D615380C1B98CFE824F6C8461522003B" strAUDIOCD = "47494638396110001000B3000004020404FE0484868404FEFCC4C6C4FCFE04FCFEFC00000011000001000000130000000001060000000000000000000021F90400000000002C000000001000100003045AD01800A4BD9852C1399615551444E95D00078C655B81C020AC646B1021150CB45DE6BF58EDE63208701459AAF5332203811013E7B4CD040366E558221A02856CD3492C8107D997B16C1EA1D5D51674049770E4D1FA4545C14400003B" strAVI = "47494638396110001000B30000040204848684C4C6C4FC0204FCFEFC0100002D08130000001100900100F60013130000000108980000F600001300000021F90400000000002C000000001000100003044390C84909B895DE8DB32582008880578663579DA115942B188AC19B71576DC713A0C39ACB8056034A58A95F70F4221A7DC5A6CFE812587CA45BE0C831CDA82695471201003B" strBARCODE = "47494638396110001000B30000040204848684FCFEFC7700005E9B580200FF3C081700000011000001000000130000000001060000000000000000000021F90400000000002C000000001000100003043350C849ABBD1508A0BBDFD22776E146722608A2A32AA66C19B3E47ABE761EEB70FDD22E582F38C3693093A324C0640A9A814904003B" strBAS = "47494638396110001000B3000004020404860404868404FE0484028404FEFC848604FCFE04FC02FCFCFEFC0013140000000106580000B800001400000021F90400000000002C000000001000100003044C30C99900A0974E7B322099061CC60520A0268D658586DB68B93356588000DC70756F3AD1CE64B9F14C841460C034159E16140810A87A04C193B2E809D53647958AD3126F0EA4DE386D164E22003B" strBAT = "47494638396110001000B30000040604848604848684C4C6C4FCFEFCCCCECC040684FCFE04C4C6CC291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003044A90C849ABBD54E8CDBB46032886E42000C260AC6CBB9EA96B10004DC385A7A30396A1054A2050FBA5288003D11894040E1A406002EB4D0083435182AB00B65C9E8F8AD2EDBEE8B4FA1B01003B" strBMP = "47494638396110001000B3000004060484860404868404FEFC040684CBCCCB606260FBFDFBA6A7A6FCFE048604060406FCCC0664868886FC060474767421F90400000000002C0000000010001000030469F048691AA860D2BC2FE04786494D28141C60198775380A200CC4118459532C002CD381824B42102C183141239008808802A48CE9D4B41A8F06569B1D92340544A1907DB684DB87E1636D49C6084463DD2E1DE072BAD57E47EB357C7073666E6F61087F1A1F8B8B1A11003B" strCD = "47494638376110001000B30A00040204048604048684840284C4C6C404FE048402048486048486840402FCFCFEFC0000000106000000000000000000002C000000001000100000046B504909AA9D5855520E224495014292041E484D002194E847282040092EFCD19F0D1440D749F6E90102016020D42A121095C1C040B5699ED88DD30AA01AA4152702DA4A16905AEC3390C0010B3E2C8FFD72715BB4E7818EB36A2420087B26027E142D7A054C192C16221811003B" strCDR = "47494638396110001000B300003D362CE8B425ADB2B1EBF2204F477CA1EF62AE851ADBF75244FEA448DED478839E99804FFBFDFBC3C646DBFB8A6D5A2821F90400000000002C000000001000100003047690494996108ACCCD88734DD82489C2299F5388458198D452A46273B870631833181EC083A0130AF01EC84760700855444698E051B3540500C0B476B966B722C1A268BC4CA9A205A111581E0C8087AC30703216CBC120106A01EB14064B7C2241071A816D351F053013158A7D05881C1D0B0A0A6A1C11003B" strCHM = "47494638376110001000B30500040604848604848684C4C6C4848284FCFEFC040684FCFE04CCCECC291CCC57F4127C7700FF0055FF001FFF00F8FF00772C0000000010001000000454B0C82983B5349770FA198156791E42685C6779404108B00074033C74AD300D401FC82C97C830A3E532B2D4A7252CC4742904D329FAC52627E7B5309DE8503D4048927D7283926FA67898663381F0D819AEF73411003B" strCLASS = "47494638396110001000B300000402049189874644469C0204D7D9D7BC5A5CB8BAB82522247C6F719C3A3CFCFEFCFC7A7C7C2224F40204FC3A3C9C9E9C21F90400000000002C000000001000100003046050C9298FA0980A70723E40E86160D829C24995E12501EE041E65B701A4B0380C87FA954D61D168C0500257F260481407089A0AA40828108381F5A14AD11012024162988600860C01274972C698B586260924C1721221D5161862327C13471311003B" strDLL = "47494638376110001000B30400040604848604848684C4C6C4FCFEFCFCFE04CCCECC7C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C000000001000100000044750C84989BDE26A62B2F61B311020195A400A60E765AC961704F035D41E50D0DACD060580A4E68BA17C02D88B65142645380D60502C9AA4C4688BA36D5905D4B0985A5399CFB508003B" strDOC = "47494638376110001000B3040004060484868404FEFCC4C6C4FCFEFCCCCECC5C00137C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C000000001000100000045290C840AB9598849C039040288EDFF601428AA22A31BA4218AF433110C519ABF18D1303DD2E86BB1985ACCFE056009E429E4FD186936A389C206663EBD68E5B6C463BE178AB61B184AC59BADF4B6B94448A00003B" strEML = "47494638396110001000B30000040604848684C4C6C4FCFEFCCCCECC1F00065C00137C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003043C70C849ABBD38E7C0B90E03110E00060A038A9615288AA8C84A6E3AC6E4E4BDA318CCA0602798A31929A0E28068010193979F4EA30458AFD82BD51201003B" strEXE = "47494638396110001000B30000040604848684C4C6C4FCFEFCCCCECC0406BCC4C6CC7C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003043B70C849ABBD34E8CDBB1606181A2328044060146CEBB26820BCC500D8764C787C2A609914013889FD88031D32E95B2A9146678AD70358AFD82C2002003B" strFILM = "47494638396110001000B30000FC3204CCFECC0486D4FCFEFC3C9B0002000032080000000011000001000000130000000001060000000000000000000021F90400000000002C000000001000100003044310C849E5B803E46A35D65C876DE1348261769295FA55411C48422DA0D24C03F570B3B39820D0BBC10031A44D30622E87C5A66F288B629E58E6758AF549B3CE26D81601003B" strFIREFOX = "47494638396110001000B30000C43C12F3AE422E9CE9C0DBFA52637A92A0BDB0652C8DB0E1F8FBFC3C5664AE9C776283B26A6762FCC66C848A80F4862421F90400000000002C000000001000100003046BF0C83919BAF8E02D2DDF9820121F780DC7E2211A9A2E8E32CCAB56348A7314813CD4084520401009691984E16120106001E445C3783013849E9435280098D580635B400C080080C1C098FD300577C1B9701F5675B77E7687EFF77D170B143B0586862B080C8B8C8D8B1811003B" strFLD = "47494638396110001000B300000406049C9E04FCCE9CFCFEFCFCFE9CCCCE64FCFECC7C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003044970C849ABBD38D7C039C8C1601804117C5650AC6CD1755230CEF448149F5CEE3C21E0035DCF47040A87029F91C44B3A6F396693F88BEE9ECE6AD080A50AB4AA9698850298CF68F42002003B" strFLOPPY = "47494638396110001000B30000040204848684C4C6C4FCFEFC7A9B0002000028080000000011000001000000130000000001060000000000000000000021F90400000000002C000000001000100003043F10C849EB00028CCDB90601A675DD146664999D637AADA2BB89ACFC82B14C8B55050BC0A0308823F6243F2066C54A66948166510995868EC7C020CAED7A0311003B" strFORM = "47494638396110001000B3000004020484868404FEFCC4C6C4FCFEFC0100001E080000000011000C01000000130000000001060000000000000000000021F90400000000002C000000001000100003042F90C849ABBD38EB0CFA968020741E468A226901C44086E35AB925C55EB76DCA785091835F60B8021200448DEA938900003B" strGRAPH = "47494638396110001000B300000402040486040402FCC4C6C4FC0204FC02FCFCFEFC00000011000001000000130000000001060000000000000000000021F90400000000002C0000000010001000030452D0006306B5F552A9B3C700308C836092289799C2B74DAB9905B42412384BD28135E104D6ACC601B20A489E6D6034210B3C9FA129782A8B3967B2166266ABDB1E36A885127F5F2B37C46EBB27B038456E8800003B" strHLP = "47494638396110001000B30000040604CC9E348486848F0689C8CAC8CC66CCCC06CC9C6234FC9EFCFCFE04640664FCFEFCFCCE34A1A39A646664E4E2D421F90400000000002C000000001000100003046270C9B906A0980E64D4CDD3668C83078AC6712843F949682207ACF5A1A3C1242C30C09C9C8C71B0387EB804B1656C5898A40109E068089E0D422BD7745E068D07C1D90208B216D8A0F0106B1BE8D742C162B7095AF984BE16A741127C7F807B7A1211003B" strIE = "47494638376110001000B30D002640604CB0ED99D8F62D88C68CAAD43196E8CCE4FA606F7BB3CBF755588951C9F7649CC553709FFBFDFC80F2FC608AB62C0000000010001000000483B049422B7D324F9DDFE20D211906653C48C1118BF760012363D2EB384AF00546833C8786C710180C0A019A8F11C42C0688C6205078F4104C67314045A20CD8E042514898CF0C0498B91030CA6A12498D481C1E85771E611C1CE6762A037A01020A000480072C0D65008F0708926076211492986060754112679FA09D1207A4A5A6A411003B" strINI = "47494638376110001000B30400040604BCBE04848684C4C6C4FCFEFCFCFE04CCCECC7C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C000000001000100000044B9010302BA5325341B8AF197759A4C465A834605D9A1AEC09CC13B6862E7A9BD2ECDBB1D4206090C0703543A010A0EC5A9925804978CA004AA6338802348DDC5C3536289BCFCFDA6F8D8A00003B" strINSTALL = "47494638396110001000B3000004020476A9652E969432EEACC1CAB95C7A208B9290A1B3B140FE04DCFE044B494BF3F6F47CFE7C69707244E9E720272521F90400000000002C000000001000100003047A70C9F988BDC48039D509C27184C7C62D5E70486279A2DFBAB4E652119E4092E663180AC5AC7520941A1620EE35DBFC149647704A5D1016485C40F5B3A0AC58E36090B81A1EC807B871308C19C307C0B4621F1C8386E7209CD4DB220A050E0E0D1C75067604085187580F0F2B04090801350B733D0D0105721C11003B" strISO = "47494638376110001000B30600040604048604349E9C64CEA8D9DBD9848785FBFDFBB4CE9CAEB0AE04FE04747674CCCE64343634649ECCC8CAC81C9ECC2C000000001000100000046CD0C849AB9D2A5F9ACF72DAA5088387380E6329C3401E0E42202A553C4D5BC8712D293B5201B0E3F91488D3D04044A53013C470277916AEC5644140201854054C5276183C0C3443D8893C1D0E8F07401266D81957C7DB3E571B1201552976207D405888887D4C008D8E8F8B11003B" strJAVA = "47494638396110001000B30000FC0204FCFEFC040284770000469BD80200AF34081600000011000001000000130000000001060000000000000000000021F90400000000002C000000001000100003043830C80068A533E37CF5AEA037855227866626ACEC1AB093F05E972CD9782BE3B7ADF1B1D76B77FBF962C7A0C7A5D4317DC99F31C914E94411003B" strMDB = "47494638376110001000B30400040604848604848684C4C6C4FCFEFCFCFE04CCCECC7C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C0000000010001000000459904841AB9598889C05C080F7711AF101451A0043DB9A402C14286D0CB7810D7190D299C14E1608CC46049D84070B1D5D2F03D223F0B17204E6C454450AB5259832999D2E3942296693C4B9756036693985DA5BD3987EAF8F00003B" strMID = "47494638396110001000B30000040604848684C4C6C4FCFEFCD4D6CC1F00065C00137C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003044130C84987BDE1EA41B2F6DB200C207901C089A616B8B222EC0EE825C8A705DF584E5F041C8DB5C3AD743623B1D853C1824D1D2C160D515B82AC76CB93BEBE354B04003B" strMP3 = "47494638396110001000B300009C6634FCCE34CCCE9CDCDEDCCC9E9C9C9E34FCFE9CB79E64C4C6C4FCFEFCFCCE64FC9E34ECD6C4ECEEECFCCE9CCC9E3421F90400000000002C000000001000100003044E3049D9A6BD1308CCD9031CC61CCF115AA3F220A7E4290AD87A8FB298A70700811CEA09C083C0391C0A9F04096739380C8E2469D384C21E85A06F52BB96949C4240F5199C488F0FF52430325A8908003B" strMPLAYER = "47494638376110001000B306000406040486048486840406FCFC0604FCFE04FCFEFC7C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C000000001000100000044DD0C83985A5D8582141D697018C1C158EDE2714C5F851000B08734D979AA87BBC98D2BB604D827B017306C2642009687EC92893E93C969412A6A10A552A07E0ED93F8AAFC36E874CA876AB72511003B" strPDB = "47494638396110001000B30000040604048604048684C4C6C4FCFEFCFC0604848684CCCECCF0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003045190C849AB1D38E37381FFDE400D450104680A8812599E29BAB62506C700471CF570163896AB4404CA58BB625120984D86C466533739F8040526D3390281904F80C1E01973C35E0FB59A0E5DACF0015C1201003B" strPDF = "47494638376110001000B30600131513979891DBD6DA545654C1B7B98C0A0CF8F9F8E55452C4C6CBFC3036343234777877FC6E6CEF0907E69290F8B0AE2C0000000010001000000471D0C8456B957822447A08828231CC612668D2049268306823CFC58289F0AC174115288D827038346C08080066214008040781E1E9544EA6D203A669B01A6C5241C2B1ED2E4706C74322F5DAA687C7C37420BB2571A984C0305FEB1953554B245B4F4D027781878312030A90910A00949411003B" strPHP = "47494638396110001000B300000402049C9ECCD4D6D47700009437B00201550701E100007711009401000200130700000001068200000000000000000021F90400000000002C000000001000100003043230C849ABBD3863C1F51480907122D805A40402E1DAB2AD69BE323D73A14DEF38CEF6B31F50A592A94217D3E75449799E9E08003B" strPPT = "47494638396110001000B30000040604848684C4C6C4ECEEEC840684D4D6CC545654FCFEFCE4E2D40406FC840204747674DCD6DCCCCECCF4F2F4FF007721F90400000000002C0000000010001000030464F09C15AABD554ECDB9D18B208EA4F0490BA0AE2C706E402701CDBB1CB1A20F0741DBB803E2C038247C3550508748009040008241ADFE942D5612A5190800828303B1DD880F014000C12E001D87AF9C5D5E0C1C0330594AB635FE80817506848586840711003B" strPRC = "47494638396110001000B30000040204FCFEFC0402FCFC0204609BAB0400380408E100007711006001000400130400000001068200000000000000000021F90400000000002C000000001000100003044430483980053353AB85D0951678DE144E9F6795C1299158007CEE2BC4F25D8F240AECA2D10F177C0D4D839DCE95240A5BB126F146A93465196A15A835396FCECC85938900003B" strPS = "47494638396110001000B30000040604848684C4C6C4FCFEFCFC0604D4D6CC5C00137C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003044A30C84987BDE1EA21B2F6407815836781963801D8C5A696F09616610F36C1CD995E5F04594BC722E284271C1088A4E16EB95D6B3083353355D795BA496DBB97AB604C2E3743E874FA1201003B" strREAL = "47494638396110001000B300002C1E54779EACC4DEC4495E54719EFC4C5EACACBEAC82BEFC8486842C3EACD4DEFCFCFEFC5A7EAC2C3E54A9A1A9A4CEF421F90400000000002C000000001000100003047370C949AB2D81E96065F801113208523DCF7188C11106C574A48C717ECD821E83B3140C0150B1203006A8406E3168301A03A2E0892234048B462246D43D038F404F010070240A462197823904DD85413D90185A2384C0A129D427190C217C1A4B151918464F1D130C46868C454A911408901511003B" strREG = "47494638396110001000B3000004020404868404FEFCC4C6C4848684FCFEFC28080000000011007501000100130000000001060000000000000000000021F90400000000002C000000001000100003044EB04842AB95B8909CC7CE1F570C1A284A400A6056D5AD5A1014820C4BC34A080530DBAF5D21E0B3DD46804D4DE53BE608B65F33C80B54A798276DB63C22994C518E75CADE0883B47A3D4681DF8008003B" strSLN = "47494638396110001000B3000004060404860484868404068404FE04840604C4C6C48486040406FCFCFE04FCFEFCFC0604FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003046150C949AB1A38EB3CB7C793401913690061652A242A896C199FA9B4AEAE02DB33BBEF01C0215600E460010220812A2C1008972849082412CEC2008A12189201C5218BDAA200020062A0202714C99C3ABA285E010425450D288A997A154672461311003B" strSNP = "47494638396110001000B30000040604848684D45E54840604FC3E54C4C6C4D40604D4BEACEF1E04FCFEFCFC7EACDE9EACAC1E04AC0604FC0604FCBEAC21F90400000000002C000000001000100003045A30C84993BDE1EA54B2F61B978063A8010066390E811857915A99B3688D25AB4ED23F89C580332B21143E856130DCD11288C743F1B8358B19584270483074584BE3E61D125516A6198C369D9FEEF7A840AFDB9D09947EBFBF4400003B" strSQL = "47494638376110001000B30300040604848684CCCECCFCFEFC4400881F00065C00137C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C000000001000100000043C30C82987BD36E0ACF7E858208097467DD346AA2C95AE6BE80D0030D580555F7BDEFB395D900624F276C61F06972C2E8B4A5D737A3C0671430FF21201003B" strSWF = "47494638396110001000B300000426448196A3CCD2D8145E84A9B8C3FAFCFB627D8E39566DDFE2E50436539CA6BC52667AB9C6D171869994A6AC0C3E6421F90400000000002C000000001000100003047CB048B98E3D6BEA525B2044D060DB611002A20A84621CD362A4930000076364C5414F89C7608060C064AA4940185021768B9F043038A054461F62C2003C1E09A7C022F526CE8515590C4818244E6354406F27084E1521E333D8DF7963142E09000D0529490D3C1C0E7949058B1B010B5B13080B011B138B0B9E871A11003B" strSXC = "47494638396110001000B30000040604848684C4C6C4040684E4E6D4545654D4D6D40406FCECEEEC840684747674FCFEFCCCCECCFF001FFF00F8FF007721F90400000000002C0000000010001000030459508549EB5C58E1CD71D99A2032E2C87CD9C24C42259CE05292F48B2EDA1A089C60DCA1D16B084BE9781B1F5036130D6CB12326F12CE264241180CAB086588703156AA499C938849A4040B0D93F50774EEF020BF8BC1EBF8900003B" strSXD = "47494638396110001000B3000004060404860484868404FEFCCACCCAE4E6D4040684ECEEEC545654FCFE040406FCB5B7B5848604747674D4D6D4FCFEFB21F90400000000002C0000000010001000030467B08949EB7CB8E1CD31DA1AB08CE20214C4973DCB90B8EE520800C8BE43CE0A0FBFB6AF04C6A0A0D916B8A1C200F03D422E2533751C484FD41F269160CAB24FD69651FBAAC28B478211C0986D251309756E1C1E8742E1A1D73BEA04818283600D08878889871B11003B" strSXM = "47494638396110001000B30000040604848684CCCECCECEEEC545654FCFEF4747674E4E6D4F4F6F45C5E5CFCFEFC7C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003045AD08449EB54D8E0CD31D99A208EA2227C1956AC6C61A28A5600740D1C27A8D205A200855C4AB1E22110389886A840D00648618CD87B160E495DD3EAC42574331B2D3BF41D0F48F29444521BA0036C1A2B35B0EF4A827ECFD76F22003B" strSXW = "47494638396110001000B30000545654CCCECCECEEEC747674FCFEF43436CC5C5E5CE4E6D4F4F6F4848684FCFEFC7C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003045570A449EB5478E0CD31D81AA11024019CC19761E2F60129A814348D9CB0AA681C82098AD8AA46A409771B9F4220381C8E9AA2EDA9E3FD1488E6D32093D6A057E601E10417C9E5AA20EB44A74181B87C0EC5D9EF9B08003B" strTTF = "47494638396110001000B30000040604848684C4C6C40406FCFCFEFC1F00065C00137C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003044930C84989BDE16A22B2F61B478063680128808DD525A8561674B40B975C30EC3B77833AC1402878AD629C21C788646594BEA306CAC45D78962A295B8C364DDE51714C2EDE52E8F42D02003B" strTEXT = "47494638396110001000B30000040204848684C4C6C4FCFEFCE89B0001000029080000000011000001000000130000000001060000000000000000000021F90400000000002C000000001000100003043E700C302BA532D330B8AF197759A4C465A824605D9AAEA104CC13069B2E7AB7F54C0FBB530EC83AF97CAAE23019EB2189CD6170093509AED8ECCE797C4A22003B" strTXT = "47494638376110001000B3050004060404868404FEFCC4C6C4848684FCFEFC5C00137C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C000000001000100000044CB04809AAB573021202F741950142699AC0004C81D0BD6DA85225DC0AE95CDC679DAFA41E6A405CF17AB262508823168FA7644175A9E69C2B8D738B1D7189121DE5BBCD8EC903829962C54400003B" strUP = "47494638396110001000B30000040204848684FCFEFC770000EE9BD001001F1D081600000011000001000000130000000001060000000000000000000021F90400000000002C0000000010001000030431504809A6BD54547C2BF8DCE47D203792A585AEA9AA7D4198A1B17CD6E1B9D92F809B3D9F4C131C064946D68E13683A0311003B" strVBP = "47494638376110001000B30600040604FCFE0484868404FEFCC4C6C4FC0604FCFEFC7C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C0000000010001000000448D0C849AB04C0D27C07D640C06183C74D986864E4897EE367C5ABB9B92B6903858CE6A69E0F736AC9040041EE554AAE94AF1501E9B938254896086AC872AD2A8AB79B246AC6174904003B" strVBS = "47494638396110001000B3000004060404868404FEFCC4C6C4FCFEFC848684CCCECC7C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C0000000010001000030455B0C8492B2824E7AAC7D5442110A39779D846042C0A10A84AC297697CE1CA02FC4BA7A2D90D14DB085801D3096714FA6EA99004C0A2FD542E922986115C460265B130181400651F01AAE9F588B5B27C3E77DBEFBC08003B" strVCF = "47494638396110001000B3000004060464A664BFC0BF444644A9ABA9FCFEFCBCDEBC646664242624ACCEAC7CBE7C7C7E7CDCDEDC5456543436346CAE6C21F90400000000002C000000001000100003044CB0C849ABBD38EB8C84FF20D86DD32124C1A30481F20495494AA6A1DC4A61E37921CF359C41C7BBF9043B631277A4309C945F41302048A8569A60C2702C240440B471281F108E7203603E3822003B" strVCS = "47494638376110001000B30A000406043CBE7C04FE7C045E04648664606260A0A2A07D7D7DCACCCA242624FBFDFB414941B6B8B6858785DCDEDC3537352C0000000010001000000472109C536A1D0BA8BD016B6048341AA7004620AC2C699E29DB961CAACA826BDA784E77315CE15129F164810683E1503C603756E16040300A2794C1B0BC720D8544F3A0DD6E0B0C04A2B17190CD5D74D354403D4005D0D3C400A01A0B070B0D440F084D06460B8379050B097E7E2F5992930A11003B" strVDP = "47494638376110001000B3060004060404860404868404FEFC040684C4C6C4FCFEFC84060404FE040406FC848684CCCECCFF0055FF001FFF00F8FF00772C0000000010001000000464D048736A95696A3ACFFE9E146260F719411A544AEBBAE81418CA09C4D25C033C5FDCB31CCD00280C0C821F4A1520EC8E82E44DB388269182847252100C04816461BC95241109B0A2C7D3088ACD0441B39E28128980DCF99A1A0A047B456C7E123F3E2711003B" strVS = "47494638396110001000B3000042020404AE040402FC2B440BF80204BCBEBC04087304EE04676567F8FA16B4B668FCFE7CFCFEFC30790A202919AC323421F90400000000002C000000001000100003045690C949ABBD38EBCD3B1EA02301244935C8B22824E1020620350792DC8FFB0A315DE3BA97811738381C8A5CD0641804440C40900010390E03434CBA6C24AED8A1610AF0261087866CB81CDCCEEAC9B6C440D81D324604003B" strWAV = "47494638396110001000B30000040604BCBE04848684C4C6C4FCFE04FCFEFC5C00137C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C0000000010001000030450B0C85900A098060144C601010CC3378582507A135B845559B0A914C0A2ECB941511295CB0C441800731797AD58007692B3146773B44894120B6C74350142DC2136BBA15DC7DFD140890E744C186B2602003B" strWMV = "47494638396110001000B300001819188A9B12949592D1DEA4344B9EB2D0F5F8FBFB7EB5E86B6B956B6B28C6C11E8F7364FC967C3972C8F74D23DAD45C21F90400000000002C0000000010001000030474D0C8492B3D386321ECB10672741788140D297D16E2A6D3E138417014538190F3AC04899B44D799311883C72F88231A0702DC00B8F8381D0CC362D199060D4442E3B300001686DF8DD8181BCC8281E1612B14089D76212A51D6EF1D046237493F5176781282820A4B2E2E89120B8209951C971C11003B" strWRI = "47494638396110001000B30000040604848604848684040684C4C6C4FCFE040406FCFCFEFCF0F024291CCC57F4127C7700FF0055FF001FFF00F8FF007721F90400000000002C000000001000100003044E50C8498FBDE2EA43F21DDEC61DDE60841BA00226296A047B9CEF150306585BC1AAD781424F85D2040F0101C075505D8E438B67B91CAE3016D5CDB694662F5D4E78FA8A6108E8B4DA9C5DB9DF9708003B" strWSC = "47494638376110001000B3070004060484860404868404FEFCC4C6C4FCFE04848684FCFEFCF0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C0000000010001000000456F0C8398DB5341F334E27802619876082469891DE81821A690A40ADAEDD778BDC0C538160609373A982800220504B998C8740613A6502521E50B0C094DA7230A93255AD117EDBAED2560352CBBBC932398F67D8224904003B" strXLS = "47494638376110001000B3040004060404868404FEFCC4C6C4FCFEFC848684CCCECC7C0000F0F024291CCC57F4127C7700FF0055FF001FFF00F8FF00772C000000001000100000045490C842AB9598949C0B9040088AD8F6018210A61F168AA8EA0DB43118C470C62F30483F1D2010E0156FB75C6FA5F201098696A667AB2A4BD0EC0FA3C3D292125C77A27DFEA25EAB75ACE170D885AF5C2EF52CEF11003B" strXML = "47494638396110001000B30000040604349E0404868434CEFCC8CAC8F4F4F804068434669CFCFEFC349EFC0406FC3466FC34FEFC848684A4CEF404069C21F90400000000002C000000001000100003045FB0C94925BAA8E18D89BE1F771544068E2202AC80593897202CC85BA8A6F32002C22406C4C35168357431C62060B80D8D08E4221150048745170C61E85E88B8506D8C0AD70EE874FA06C5DCCA1768414D679B521CF9F8C61FB75880812C0811003B" strZIP = "47494638376110001000B30B00040604DC96040492DC04DEDCFCD68C8CD6FCFCC262046694FC06040436546CC6FCFCFDF9FCFE8C6C8EFCFCAE14FCE2B42C000000001000100000045E70C909AA4D73A1BDC011C230280DA631849158EC51605B2C73400168D9933ACE5DDF884CCAE008F86C38898E18307690C1C5D2D074FE920F03B379044A77552B9445AEB84C190F484442673A64F73B2D98BF3D0001FE605F1CF07A7F0B11003B" 'Dictionary of what file extensions use which icon Set dic = CreateObject("Scripting.Dictionary") For Each strFileExtension In Split("cda") : dic.Add strFileExtension, "AUDIOCD" : Next For Each strFileExtension In Split("") : dic.Add strFileExtension, "AVI" : Next For Each strFileExtension In Split("") : dic.Add strFileExtension, "BARCODE" : Next For Each strFileExtension In Split("bas") : dic.Add strFileExtension, "BAS" : Next For Each strFileExtension In Split("bat cmd") : dic.Add strFileExtension, "BAT" : Next For Each strFileExtension In Split("art bmp gif jpg jpeg dib pgm pcx pbm tiff tif png ppm") : dic.Add strFileExtension, "BMP" : Next For Each strFileExtension In Split("") : dic.Add strFileExtension, "CD" : Next For Each strFileExtension In Split("") : dic.Add strFileExtension, "CDR" : Next For Each strFileExtension In Split("chm") : dic.Add strFileExtension, "CHM" : Next For Each strFileExtension In Split("class jar") : dic.Add strFileExtension, "CLASS" : Next For Each strFileExtension In Split("dll ocx") : dic.Add strFileExtension, "DLL" : Next For Each strFileExtension In Split("doc dot wbk") : dic.Add strFileExtension, "DOC" : Next For Each strFileExtension In Split("eml nws") : dic.Add strFileExtension, "EML" : Next For Each strFileExtension In Split("com exe scr") : dic.Add strFileExtension, "EXE" : Next For Each strFileExtension In Split("mpg mpe mpeg mp2 spl mov qt") : dic.Add strFileExtension, "FILM" : Next For Each strFileExtension In Split("htm html url") : dic.Add strFileExtension, "FIREFOX" : Next For Each strFileExtension In Split("") : dic.Add strFileExtension, "FLD" : Next For Each strFileExtension In Split("") : dic.Add strFileExtension, "FLOPPY" : Next For Each strFileExtension In Split("frm") : dic.Add strFileExtension, "FORM" : Next For Each strFileExtension In Split("") : dic.Add strFileExtension, "GRAPH" : Next For Each strFileExtension In Split("hlp") : dic.Add strFileExtension, "HLP" : Next For Each strFileExtension In Split("hta mht mhtm mhtml") : dic.Add strFileExtension, "IE" : Next For Each strFileExtension In Split("cfg log ini") : dic.Add strFileExtension, "INI" : Next For Each strFileExtension In Split("") : dic.Add strFileExtension, "INSTALL" : Next For Each strFileExtension In Split("iso cdj cue bin ccd cif nrg") : dic.Add strFileExtension, "ISO" : Next For Each strFileExtension In Split("java") : dic.Add strFileExtension, "JAVA" : Next For Each strFileExtension In Split("mda mdb mde") : dic.Add strFileExtension, "MDB" : Next For Each strFileExtension In Split("mid midi rmi") : dic.Add strFileExtension, "MID" : Next For Each strFileExtension In Split("mp3 m3u") : dic.Add strFileExtension, "MP3" : Next For Each strFileExtension In Split("avi") : dic.Add strFileExtension, "MPLAYER" : Next For Each strFileExtension In Split("pdb prc") : dic.Add strFileExtension, "PDB" : Next For Each strFileExtension In Split("pdf") : dic.Add strFileExtension, "PDF" : Next For Each strFileExtension In Split("php") : dic.Add strFileExtension, "PHP" : Next For Each strFileExtension In Split("ppt pot ppa") : dic.Add strFileExtension, "PPT" : Next For Each strFileExtension In Split("pqa") : dic.Add strFileExtension, "PRC" : Next For Each strFileExtension In Split("prn ps") : dic.Add strFileExtension, "PS" : Next For Each strFileExtension In Split("ra rmv rv rm") : dic.Add strFileExtension, "REAL" : Next For Each strFileExtension In Split("reg") : dic.Add strFileExtension, "REG" : Next For Each strFileExtension In Split("c h inc cpp") : dic.Add strFileExtension, "SLN" : Next For Each strFileExtension In Split("snippet") : dic.Add strFileExtension, "SNP" : Next For Each strFileExtension In Split("sql") : dic.Add strFileExtension, "SQL" : Next For Each strFileExtension In Split("swf") : dic.Add strFileExtension, "SWF" : Next For Each strFileExtension In Split("sxc") : dic.Add strFileExtension, "SXC" : Next For Each strFileExtension In Split("sxd") : dic.Add strFileExtension, "SXD" : Next For Each strFileExtension In Split("sxm") : dic.Add strFileExtension, "SXM" : Next For Each strFileExtension In Split("oxt sxw") : dic.Add strFileExtension, "SXW" : Next For Each strFileExtension In Split("fot ttf") : dic.Add strFileExtension, "TTF" : Next For Each strFileExtension In Split("abw awt") : dic.Add strFileExtension, "TEXT" : Next For Each strFileExtension In Split("txt me") : dic.Add strFileExtension, "TXT" : Next For Each strFileExtension In Split("") : dic.Add strFileExtension, "UP" : Next For Each strFileExtension In Split("vbp") : dic.Add strFileExtension, "VBP" : Next For Each strFileExtension In Split("vbe vbs js jse") : dic.Add strFileExtension, "VBS" : Next For Each strFileExtension In Split("vcf") : dic.Add strFileExtension, "VCF" : Next For Each strFileExtension In Split("vcs") : dic.Add strFileExtension, "VCS" : Next For Each strFileExtension In Split("vdp") : dic.Add strFileExtension, "VDP" : Next For Each strFileExtension In Split("asp pl") : dic.Add strFileExtension, "VS" : Next For Each strFileExtension In Split("au snd aif wav") : dic.Add strFileExtension, "WAV" : Next For Each strFileExtension In Split("asf asx wm wma wmv wmf") : dic.Add strFileExtension, "WMV" : Next For Each strFileExtension In Split("rtf wri") : dic.Add strFileExtension, "WRI" : Next For Each strFileExtension In Split("ws wsc wsf wsh") : dic.Add strFileExtension, "WSC" : Next For Each strFileExtension In Split("xlb xlc xls xlv dif slk tab csv") : dic.Add strFileExtension, "XLS" : Next For Each strFileExtension In Split("smi css xml xsl smil") : dic.Add strFileExtension, "XML" : Next For Each strFileExtension In Split("b64 tar z cab lzh gz zip arj arc mim") : dic.Add strFileExtension, "ZIP" : Next 'Read the directory, stuff name, size, and date into arrays Set fols = fs.GetFolder(strDirectory).SubFolders For each fol in fols On Error Resume Next Err.Clear ReDim Preserve strFolderInfo(UBound(strFolderInfo) + 1) If Err Then ReDim strFolderInfo(0) strFolderInfo(UBound(strFolderInfo)) = fol.Name & vbTab & fol.Size & vbTab & fol.DateLastModified Next Set fils = fs.GetFolder(strDirectory).Files For each fil in fils 'Check to be sure I'm not indexing one of my index files! blnGoodFile = True If fil.Name = INDEX_FILE Then blnGoodFile = False If Left(fil.Name, Len(GRAPHIC_PREFIX)) = GRAPHIC_PREFIX Then If Right(fil.Name, 4) = ".gif" Then blnGoodFile = False End If End If If blnGoodFile Then On Error Resume Next Err.Clear ReDim Preserve strFileInfo(UBound(strFileInfo) + 1) If Err Then ReDim strFileInfo(0) strFileInfo(UBound(strFileInfo)) = fil.Name & vbTab & fil.Size & vbTab & fil.DateLastModified End If Next 'Sort both arrays by name SortAscending strFolderInfo, vbTab, 0 SortAscending strFileInfo, vbTab, 0 'Generate the web page strIndex = "
" & vbCrLf strIndex = strIndex & "" & vbCrLf strIndex = strIndex & "" & vbCrLf strIndex = strIndex & "" & vbCrLf 'Insert the header (if any) strIndex = strIndex & File2String(HEADER_FILE) & vbCrLf 'Start the file list table strIndex = strIndex & "" & strFileSize _ & " | " & strFileModified & " | |
" & strFileSize _ & " | " & strFileModified & " |