Microsoft Access (2007, 2010) при компиляции модуля указывает на ошибку в объявлении Declare Function


: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/users/d/dm9/domains/mokshin.su/includes/unicode.inc on line 311.

Если MS Access при компиляции модуля указывает на ошибку в строке примерно такого содержания:

Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" lpofn as LPOPENFILENAME) as Boolean

Или при выполнении выдается ошибка: "Ошибка при компиляции функции. Ошибка синтаксиса в модуле Visual Basic. Проверьте программу, а затем перекомпилируйте ее.".

Дело скорее всего в том, что используется 64-битная операционка.

В этом случае проблема лечится добавлением PtrSafe в объявление таким образом:

Declare PtrSafe Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" lpofn as LPOPENFILENAME) as Boolean


Нравится