до fpc 2.2.0 определение GetOpenFileName насколько я понял находилось в модуле windows, все нормально работало.
начиная с версии 2.2 - Error: Identifier not found "GetOpenFileName", хотя на тип TOPENFILENAME используемый этой функцией компилятор не ругается.
в delphi функция определена в модуле commdlg, но он компилятором ненаходится, хотя в составе fpc присутствует