2013-05-14 3 views
0

мне нужна помощь с Error 800A000D - Type mismatch, что я получаю в суб ниже:Классический ASP CStr не работает

<!-- #include file="Regex.asp" --> 
<% 
Call moverzipado() 

Sub moverzipado() 
    dim nomeArquivoZip, nomeArquivo 
    nomeArquivo = request("nomeArquivo") 
    nomeArquivoZip = NomeArquivo(trim(CStr(nomeArquivo)))&".zip" 'here is the problem 
End Sub 

Это мой QueryString: ?nomeArquivo=arquivo.zip

это Regex.asp включают , Это работает.

<% 
Function RegExResults(strTarget, strPattern) 

    Set regEx = New RegExp 
    regEx.Pattern = strPattern 
    regEx.Global = true 
    Set RegExResults = regEx.Execute(strTarget) 
    Set regEx = Nothing 

End Function 

Function NomeArquivo(arquivo) 
    Set arrResults = RegExResults(arquivo, "(.*)\..*") 

    For each result in arrResults 
     NomeArquivo = result.Submatches(0) 
    Next 

    Set arrResults = Nothing 
End function 

'Response.Write(NomeArquivo("file.exe")) prints "file" here it works. 
%> 

Кто-нибудь знает, что происходит?

ответ

3

vbScript не чувствителен к регистру. Кажется, у вас есть переменная и функция с тем же именем. Попробуйте изменить имя вашей функции или переменной.

+0

спасибо! –