<%
'----------------------------------------------------------
'Nome da função: ChkImg
'Função: Verifique se o arquivo de imagem é legal
'Parâmetros: img, caminho da imagem, caminho absoluto relativo ao diretório raiz do site
'Valor de retorno: tipo booleano, se a imagem for legal, retorne True, caso contrário retorne False
'Condição: O servidor deve suportar o componente AspJpeg,
'Se não for suportado, para evitar que todas as imagens não possam ser carregadas, esta função retornará diretamente True
'http://www.downcodes.com/asp.asp
'----------------------------------------------------------
Função ChkImg(img)
On Error Resume Next 'Para capturar informações de erro, o código precisa continuar a execução quando ocorrer um erro
Dim RetunValue, ChkJpeg
RetunValue = True
'Se o caminho estiver vazio, a imagem é considerada ilegal
Se isnull(img) Então ChkImg = False:Exit Function
Set ChkJpeg = Server.CreateObject("Persits.Jpeg")
If -2147221005 <> Err Then 'Se o componente for suportado, use o componente para verificar a legalidade da imagem
ChkJpeg.Open Server.mappath(img)
Se errar então
RetunValue = Falso
Terminar se
Else 'Se o componente não for suportado, pule e retorne True diretamente
RetunValue = Verdadeiro
End If
'Trabalho posterior necessário
Se Err.number <> 0 Então Err.clear
Definir ChkJpeg = Nada
ChkImg = RetunValue
Função final
%>
Nota: Como o AspJpeg só pode processar arquivos que já estão no servidor, precisamos fazer isso durante a aplicação real: primeiro carregue a imagem em uma pasta temporária e depois verifique a legalidade da imagem. Se for legal, copie a imagem. para o diretório de salvamento da imagem, exclua o arquivo temporário e retorne a mensagem de sucesso de upload. Se for ilegal, exclua o arquivo temporário diretamente e retorne um aviso de erro.
Como a imagem só é aberta com AspJpeg e nenhum processamento de imagem é executado, a eficiência de execução desta função ainda é muito alta e basicamente não há necessidade de se preocupar com problemas de eficiência durante o uso.