I recently worked on a problem caused by an application storing the wrong location of MSSQL .ldf and .mdf files. The SQL Server was 2005.
The application was looking for the files in: \server\app root\database\data and \server\app root\database\log, but the files were in \server\mssql\data and \server\mssql\logs. I moved the database files to the location where the application was expecting them, which fixed the problem.
I don't understand why an application would need to know where these files are, it should only care about an ODBC name, or OLE access (host name, credentials). Does anyone know why an application would need this information?