Solution: I just struggled with this problem for several hours on a Win7 x64 machine, and it is so difficult to find a good answer on the Internet that I thought I would contribute to this issue late.
On my machine (Win7, x64, SQL Server 2008 R2), Administration> Data Sources (ODBC)> Drivers, a driver called "Microsoft Text Driver" does not appear. But there is a driver that says "Microsoft Access Text Driver (* .txt, * .csv)"
I managed to change the driver name in code similar to the original questionnaire INCLUDING parentheses (* .txt, * .csv) with a semicolon and a space, not a semicolon. And it worked.
select * from OpenRowset ( 'MSDASQL', 'Driver={Microsoft Access Text Driver (*.txt, *.csv)};DefaultDir=C:\;', 'select top 10 * from C:\x.csv' )
Note that the syntax for specifying a drive must be exactly the same. I can vouch for this because I went through several wrong iterations.
Magee source share