O provedor 'SQLNCLI' não está registrado na máquina local

Eu tenho um script baseado em NAnt que eu corro no meu PC local que se conecta ao SQL Server 2008 Express também em execução no meu PC local para soltar e recriar bancos de dados usando arquivos .sql - isso funciona bem, não há problema aqui.

O problema surge quando eu tenho recriado a mesma configuração em outro PC, eu recebo o erro no meu script NAnt dizendo que:

System.InvalidOperationException: The 'SQLNCLI' provider is not registered on the local machine.
  at System.Data.OleDb.OleDbServicesWrapper.GetDataSource(OleDbConnectionString constr, DataSourceWrapper& datasrcWrapper)
  at System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection)
  at System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
  at System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)
  at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
  at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
  at System.Data.OleDb.OleDbConnection.Open()
  at NAnt.Contrib.Util.SqlHelper..ctor(String connectionString, Boolean useTransaction)
  at NAnt.Contrib.Tasks.SqlTask.ExecuteTask()
  at NAnt.Core.Task.Execute()
  at NAnt.Core.Target.Execute()
  at NAnt.Core.Project.Execute(String targetName, Boolean forceDependencies)
  at NAnt.Core.Project.Execute()
  at NAnt.Core.Project.Run()

Eu pesquisei online e descobri que em um fórum foi sugerido que eu precisava instalar o Microsoft SQL Server Native Client, ecomprei este URL. (Admito que eu só instalei a parte do Native Client disso)

Apesar de este ser instalado no meu segundo PC, o script ainda me dá o mesmo erro. Alguma sugestão?

questionAnswers(2)

yourAnswerToTheQuestion