При обработке одного и того же HTTP-запроса происходит ли «кэширование» и «использование функций, которые были кэшированы»?
Если ответ «да», то у меня нет идей, и я искренне надеюсь, что кто-то еще ответит на ваш вопрос.
Если ответ «нет», то я уверен, что ваша проблема в том, что вы «кешируете» функцию в другом контексте выполнения VBScript.
Попробуйте (конечно, на тестовом сервере :-) добавить следующие 2 строки в файл, который определяет функции:
Dim g_FunctionsLoadedOK
g_FunctionsLoadedOK = "OK"
и следующую строку непосредственно перед использованием функции:
if( Eval( "VarType(g_FunctionsLoadedOK)" ) <> vbString then
' Then you're sure there's no 'g_FunctionsLoadedOK' string variable defined in this VBScript execution context,
' so maybe you should reload the cached functions, or do something else..
end if
P.S. Если система, с которой вы имеете дело, действительно большая , почему бы не использовать <! - #include file = "MyFile.inc" -> вместо этого подхода "ExecuteGlobal"?