Postado originalmente por clicknet Amigo se você pretende comercializa-lo deve saber que nem todos usa a mesma configuração de tela, por exemplo na minha configuração nao deu certo, outro detalhe deve flexibilizar o caminho do banco de dabos pois nem todos tem o disco C:, sou programador em delphi tambem... por isso tou de contribuindo com este codigo para seu sistema, procedure TFrmPrincipal.FormCreate(Sender: TObject); var ArquivoIni: TStringList; CaminhoDoAplicativo: String; begin ArquivoIni := TStringList.Create; CaminhoDoAplicativo := ExtractFilePath(Application.ExeName); try if not FileExists(CaminhoDoAplicativo + 'iSComercio.ini') then //Se Arquivo de Inicialização do Aplicativo não existir cria um com o nome begin ArquivoIni.Add('PATH=' + CaminhoDoAplicativo + 'Base\Dados.mdb'); // Caminho da Base de Dados Padrão ArquivoIni.SaveToFile(CaminhoDoAplicativo + 'iSComercio.ini'); end; ArquivoIni.LoadFromFile(CaminhoDoAplicativo + 'iSComercio.ini'); //Se o arquivo existir if not FileExists(ArquivoIni.Values['PATH']) then begin Application.MessageBox('Não foi possível localizar a Base de Dados.','iSComercio', 48); if OpenDialog1.Execute then begin ArquivoIni.Values['PATH'] := OpenDialog1.FileName; ArquivoIni.SaveToFile(CaminhoDoAplicativo + 'iSComercio.ini'); end else FatalAppExit(0, 'Erro de conexão à Base de Dados.'); end; if FileExists(ArquivoIni.Values['PATH']) then begin ADOConnection1.Close; ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=' + ArquivoIni.Values['PATH'] + ';Mode=Share Deny None;Extended Properties="";Persist Security Info=False;' + 'Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDBatabase Password=MAGIC;' + 'Jet OLEDB:Engine Type=5;Jet OLEDBatabase Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;' + 'Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";' + 'Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;' + 'Jet OLEDB:Compact Without Replica Repair=False;' + 'Jet OLEDB:SFP=False'; ADOConnection1.Open; end else FatalAppExit(0, 'Erro de conexão à Base de Dados.'); finally ArquivoIni.Free; end; end; bom dia amigo, O programa já faz isso, dentro da pasta do mesmo tem um arquivo TXT onde o usuario pode definir o caminho do banco de dados, sendo possivel faze-lo rodar em rede... Com relação a Tela, realmente, estou fazendo algumas modificações aqui para que ele se encaixe melhor com qualquer resolução definida. Att, Nalvo
Postado originalmente por GivigiRJ por qto vc pretende vender o sistema? 350,00
Obrigada pela informação, vou corrigir.
Achei o evento muito legal e a proposta muito interessante. Mas só corrigindo uma informação do post, no último artigo o autor não é apenas Renata Rocha Mendes Ferreira, mas sim: Renata Rocha Mendes Ferreira, André Machado Coelho, Daniela Gil Greco, Rafael Guimarães Tavares da Silva, Thais Emanuele da Silveira Almeida.
Não quero aqui apontar os Defeitos de seu sistema, mas contribuir, por isso vai mais uma diga, cria uma função para criar o campo cod, pois em rede o AutoInc não é recomendado em ADO...
Vi que seu banco de dados não tem senha já é uma vulnerabilidade pois quem quiser pode pegar teu arquivo MDB e acessar todos teus servidores, bastaria abrir o aquivo pelo Access, ir na Tabela Servidor, lá tem o IP, a Porta, o Nome de Usuário, e a Senha em texto puro.. Na Tabela Usuários Tambem tem o nome de usuário e a senha.. Nesse caso pode-se adaptar-se o código fonte acima, onde tem Password=MAGIC; vc bota Password=;
Onde tem essa carinha é um ": D" Sem o espaço no meio e onde tem Password=MAGIC, você coloca sua senha no lugar de MAGIC..
Amigo se você pretende comercializa-lo deve saber que nem todos usa a mesma configuração de tela, por exemplo na minha configuração nao deu certo, outro detalhe deve flexibilizar o caminho do banco de dabos pois nem todos tem o disco C:, sou programador em delphi tambem... por isso tou de contribuindo com este codigo para seu sistema, procedure TFrmPrincipal.FormCreate(Sender: TObject); var ArquivoIni: TStringList; CaminhoDoAplicativo: String; begin ArquivoIni := TStringList.Create; CaminhoDoAplicativo := ExtractFilePath(Application.ExeName); try if not FileExists(CaminhoDoAplicativo + 'iSComercio.ini') then //Se Arquivo de Inicialização do Aplicativo não existir cria um com o nome begin ArquivoIni.Add('PATH=' + CaminhoDoAplicativo + 'Base\Dados.mdb'); // Caminho da Base de Dados Padrão ArquivoIni.SaveToFile(CaminhoDoAplicativo + 'iSComercio.ini'); end; ArquivoIni.LoadFromFile(CaminhoDoAplicativo + 'iSComercio.ini'); //Se o arquivo existir if not FileExists(ArquivoIni.Values['PATH']) then begin Application.MessageBox('Não foi possível localizar a Base de Dados.','iSComercio', 48); if OpenDialog1.Execute then begin ArquivoIni.Values['PATH'] := OpenDialog1.FileName; ArquivoIni.SaveToFile(CaminhoDoAplicativo + 'iSComercio.ini'); end else FatalAppExit(0, 'Erro de conexão à Base de Dados.'); end; if FileExists(ArquivoIni.Values['PATH']) then begin ADOConnection1.Close; ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=' + ArquivoIni.Values['PATH'] + ';Mode=Share Deny None;Extended Properties="";Persist Security Info=False;' + 'Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDBatabase Password=MAGIC;' + 'Jet OLEDB:Engine Type=5;Jet OLEDBatabase Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;' + 'Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";' + 'Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;' + 'Jet OLEDB:Compact Without Replica Repair=False;' + 'Jet OLEDB:SFP=False'; ADOConnection1.Open; end else FatalAppExit(0, 'Erro de conexão à Base de Dados.'); finally ArquivoIni.Free; end; end;
Valor: R$ 350,00 Sem custos de manutenção e atualizações gratuitas por 01 ano. O sistema esta em constante evolução, e estarei enviando a todos os que adiquirirem as novas versões sem custos adicionais.
por qto vc pretende vender o sistema?