Fórum Dbx e MsSql Server dando pau #391054

23/11/2010

0

Não estou conseguindo logar minha conexão com o banco do cliente. Na minha máquina funciona bem, mas eu uso Autenticação do Sql Server e no cliente está como Windows Authentication. Abaixo meu código e meu parâmetro de conexão.  
procedure TDM_Principal.DataModuleCreate(Sender: TObject);
var
 arq_conexao: TiniFile;
 path,
 banco,
 arquivo: String;
begin
  conexao := Sqlconnection1;
  path := ExtractFilePath(Application.ExeName);
  arquivo := path + ExtractFileName('Conexao_Global.ini');
  arq_conexao := TIniFile.Create(arquivo);
  banco := arq_conexao.ReadString('conexao_atual','banco_atual','');
  if banco = 'SqlServer' then
  begin
    SqlConnection1.ConnectionName                          := 'Mairibel';
    SqlConnection1.DriverName                              := 'MSSQL';
    SqlConnection1.GetDriverFunc                           := 'getSQLDriverMSSQL';
    SqlConnection1.LibraryName                             := 'dbxmss30.dll';
    SqlConnection1.LoginPrompt                             := False;
    SqlConnection1.VendorLib                               := 'OleDb';
    SqlConnection1.Params.Values['DriverName']             := arq_conexao.ReadString('SqlServer','DriverName','');
    SqlConnection1.Params.Values['SchemaOverride']         := arq_conexao.ReadString('SqlServer','SchemaOverride','');
    SqlConnection1.Params.Values['DriverUnit']             := arq_conexao.ReadString('SqlServer','DriverUnit','');
    SqlConnection1.Params.Values['DiverPackageLoader']     := arq_conexao.ReadString('SqlServer','DiverPackageLoader','');
    SqlConnection1.Params.Values['DriverAssemblyLoader']   := arq_conexao.ReadString('SqlServer','DriverAssemblyLoader','');
    SqlConnection1.Params.Values['MetaDataPackageLoader']  := arq_conexao.ReadString('SqlServer','MetaDataPackageLoader','');
    SqlConnection1.Params.Values['MetaDataAssemblyLoader'] := arq_conexao.ReadString('SqlServer','MetaDataAssemblyLoader','');
    SqlConnection1.Params.Values['HostName']               := arq_conexao.ReadString('SqlServer','HostName','');
    SqlConnection1.Params.Values['DataBase']               := arq_conexao.ReadString('SqlServer','DataBase','');
    SqlConnection1.Params.Values['User_Name']              := arq_conexao.ReadString('SqlServer','User_Name','');
    SqlConnection1.Params.Values['Password']               := arq_conexao.ReadString('SqlServer','password','');
    SqlConnection1.Params.Values['BlobSize']               := arq_conexao.ReadString('SqlServer','BlobSize','');
    SqlConnection1.Params.Values['LocaleCode']             := arq_conexao.ReadString('SqlServer','LocaleCode','');
    SqlConnection1.Params.Values['ErrorResourceFile']      := arq_conexao.ReadString('SqlServer','ErrorResourceFile','');
    SqlConnection1.Params.Values['MSSQL TransIsolation']   := arq_conexao.ReadString('SqlServer','MSSQL TransIsolation','');
    SqlConnection1.Params.Values['OS Authentication']      := arq_conexao.ReadString('SqlServer','OS Authentication','');
  end;
end;
 
[conexao_atual]
banco_atual=SqlServer

[SqlServer]
DriverName=MsSql
SchemaOverride=%.dbo
DriverUnit=DBXDynalink
DiverPackageLoader=TDBXDynalinkDriverLoader,DBXDynalinkDriver100.bpl
DriverAssemblyLoader=Borland.Data.TDBXDynalinkDriverLoader,Borland.Data.DbxDynalinkDriver,Version=11.0.5000.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b
MetaDataPackageLoader=TDBXMsSqlMetaDataCommandFactory,DbxReadOnlyMetaData100.bpl
MetaDataAssemblyLoader=Borland.Data.TDBXMsSqlMetaDataCommandFactory,Borland.Data.DbxReadOnlyMetaData,Version=11.0.5000.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b
HostName=.
DataBase=Cosmeticos
User_Name=
Password=
BlobSize=-1
ErrorResourceFile=
LocaleCode=0000
MSSQL TransIsolation=ReadCommited
OS Authentication=True
Está faltando mais alguma coisa? Como eu disse, na minha casa funciona. Lá nesta empresa já funciona outro programa com Sql Server, só o meu que não funciona. Que tristeza. Quando eu usaei lá o MySql funcionava com ZEOS, mas tive que mudar e agora preciso receber e tenho que fazer funcionar esse troço. O dono ainda não sabe que não funcionou com MsSql Server.


Pjava

Pjava

Responder

Posts

23/11/2010

Leonardo Xavier

Qual mensagem de erro ;e apresentada para você quando você tenta conectar?
Responder

Gostei + 0

23/11/2010

Pjava

Connect() Open ou Server Inexixtente. Essa é a mensagem.
Responder

Gostei + 0

23/11/2010

Pietro Braga

Tente copiar o MIDAS.DLL para a pasta system32 do seu cliente...
Responder

Gostei + 0

23/11/2010

Pjava

Isso já fiz
Responder

Gostei + 0

24/11/2010

Pjava

Já foi resolvido. Eu retirei todas aquelas linhas que são fixas na conexão do .INI e deixei somente as essenciais: Host,User,Psswd e umas outras poucas lá. Também estava dando erro numa tabela que não existia. Como eu havia colocado o código no OnCreate do DM, ele não achava a tabela e não abria o programa. Mudei para o OnBeforeConnect do TSqlConnection, aí o programa abria e ao tentar conectar ele dava o erro que o objeto XXXX não existia. Rodei o novo Script e foi lá. Não sei se no início era isso ou aquele monte linha de conexão(acho que era isso). Só não sei como fazer nesseforum para marcar como resolvido.
Responder

Gostei + 0

24/11/2010

Leonardo Xavier

Para marcar como resolvido tem um item com esta definiçao em todos os usuários que te deram "suporte" neste tópico Marque se ajudou ou nao. Abraços
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar