プログラムコード
<%
-----------------------------------------------
'関数名:ChkImg
'機能: 画像ファイルが合法かどうかを確認します
'パラメータ: img、画像パス、Web サイトのルート ディレクトリからの絶対パス
'戻り値: ブール型、画像が正当な場合は True を返し、そうでない場合は False を返します
'条件: サーバーは AspJpeg コンポーネントをサポートしている必要があります。
' サポートされていない場合、すべての写真がアップロードできないことを避けるために、この関数は直接 True を返します
-----------------------------------------------
関数 ChkImg(img)
On Error Resume Next 'エラー情報を取得するには、エラー発生時にコードの実行を継続する必要があります
Dim RetunValue, ChkJpeg
RetunValue = True
'パスが空の場合、画像は不正であるとみなされます
if isnull(img) then ChkImg = False:Exit Function
Set ChkJpeg = Server.CreateObject("Persits.Jpeg")
If -2147221005 <> Err then 'コンポーネントがサポートされている場合は、コンポーネントを使用してイメージの合法性を確認してください
ChkJpeg.Open Server.mappath(img)
エラーの場合はその後
戻り値 = False
終了の場合
Else 'コンポーネントがサポートされていない場合は、スキップして直接 True を返します
戻り値 = True
End If
'www.downcodes.com 必要な後処理
If Err.number <> 0 then Err.clear
ChkJpeg = なし
ChkImg = RetunValue
を設定します。
終了機能
%>
注: AspJpeg はサーバー上に既に存在するファイルのみを処理できるため、実際のアプリケーション中にこれを行う必要があります。まず画像を一時フォルダーにアップロードし、画像が合法であるかどうかを確認して、合法である場合は画像をコピーします。画像保存ディレクトリに一時ファイルを削除し、アップロード成功メッセージを返します。不正な場合は一時ファイルを直接削除し、エラー警告を返します。
AspJpeg で画像を開くだけで画像処理は行わないため、この関数の実行効率は依然として非常に高く、基本的に使用中に効率の問題を心配する必要はありません。