>Function filetype > Lparameters lcData > * I added a SET DEFAULT TO command here. Cecil >Local lcReturn,lcContents > If Pcount()=0 Or Vartype(lcData)#'C' > lcReturn='' > Else > If Adir(laDummy,lcData)>0 && File > lcContents=Filetostr(lcData) > Else && Memory variabøe > lcContents=lcData > Endif > Do Case > Case Len(lcContents)<4 > lcReturn='' > Case Left(lcContents,3)=Chr(0xFF)+Chr(0xD8)+Chr(0xFF) > lcReturn='JPG' > Case Left(lcContents,3)='GIF' > lcReturn='GIF' > Case Substr(lcContents,42,3)='EMF' > lcReturn='EMF' > Case Left(lcContents,4)=Chr(0xD7)+Chr(0xCD)+Chr(0xC6)+Chr(0x9A) > lcReturn='WMF' > Case Left(lcContents,4)=Chr(0x4D)+Chr(0x4D)+Chr(0x00)+Chr(0x2A) > lcReturn='TIF' > Case Left(lcContents,4)=Chr(0x89)+'PNG' > lcReturn='PNG' > Case Left(lcContents,2)='BM' > lcReturn='BMP' > Case Left(lcContents,3)='CWS' And Asc(Substr(lcContents,4,1))<16 > lcReturn='SWF' > Case Left(lcContents,3)='FWS' And Asc(Substr(lcContents,4,1))<16 > lcReturn='SWF' > Otherwise > lcReturn='' > Endcase > Endif > Return lcReturn >