Ir para conteúdo
Fórum Script Brasil

luizf

Membros
  • Total de itens

    80
  • Registro em

  • Última visita

Tudo que luizf postou

  1. O que pretendo fazer é o seguinte, tenho muitos arquivos grandes no HD, arquivos particulares, do serviço, e só vai acumulando... Vou fazer bkp de quase tudo e limpar. Comecei gravando em DVD, mas o problema é que sempre sobra um espaço bom no DVD, por exemplo, as vezes sobra 1GB vazio, e como estava testando tudo a mão até encontrar um arquivo que encaixe no espaço iria tomar muito tempo. Então resolvi fazer um programa para isso, mas no fim o programa tambem esta tomando um certo tempo, o bom é que depois de feito, posso usar de novo quando tiver outro acumulo. Mas quando aos numeros (1,2,3,...), são index de banco de dados, o que fiz, fiz um pequeno banco de dados e o primeiro item, por exemplo, a primeira coluna de um DBGrid, chama-se index. Por exemplo, no DBGrid: Index | Nome | Tamanho (MB) ------------------------------------------ 1 | Nononono | 2800 2 | Nononono | 2900 3 | Nononono | 2500 4 | Nononono | ...... 5 | Nononono | ...... ... | Nononono | ...... ... | Nononono | ...... N | Nononono | ...... ------------------------------------------ Então essa lista que falei no começo do tópico, são os index, gerando as combinações possiveis, vou com outro código, testar se o soma (Tamanho MB) dos index não ultrapassa o que um DVD suporta, se não estourar, pretendo jogar essa combinação em um banco de dados, junto com o resultado da soma, depois de pronto, ordenar o banco de dados, para mostrar os resultados em ordem decrescente, com relação ao Tamanho (MB). Então, é só ver quais arquivos que se refere a lista com os index e jogar nos DVDs. Deu pra entender a finalidade, ou complique mais ainda.
  2. É o seguinte, para explicar, vamos supor que haja um memo. Nesse memo, cada linha é um valor ordinal, ex: 1 2 3 ... ... ... N Gostaria de gerar um lista com todos cominações possiveis, exemplo, se fosse somente 3 linhas no memo 1 12 123 13 132 2 21 213 23 231 3 31 312 32 321 Só que essas linhas do memo são variaveis, uma hora pode ter 3, depois 30, depois 100, não é fixo. Estou quebrando a cabeça com o laço for, mas não tá dando certo.
  3. Tudo bem, tentei. Mas como criar um campo no banco de dados para aceitar TStringList. Tem as opções no BD para inteiro, real, string... Tem os componentes que aceita TStringList, mas se fechar o programa e abrir de novo, vão estar em branco, porque a TStringList não foi salva no BD.
  4. O caso é o seguinte: Preciso fazer uma comparações de strings, caso a string seja compativel, então eu adiciono em uma TStringList. Só que preciso adicioná-las em um banco de dados. Supondo, que haja um DBGrid com duas colunas. Em um caso comum, poderia colocar a primeira coluna como, por exemplo, Index e a segunda como Nomes. No meu caso, a primeira coluna seria o Index (1, 2, 3, ..., N). E a segunda coluna, Nomes, preciso que seja algo compativel com uma TStringList. Para que, quando o estiver selecionado o Index 1, Nome mostre, por exemplo: A B C D ... Index 2: K L ... Index 3 J X W ... E assim por diante. Tentei de algumas maneiras, mas não está dando muito certo.
  5. Mais problemas... Parece que a cada problema resolvido, surge outro(s) no lugar. Meu problema agora é com esta mensagem: Tá acontecendo o seguinte: Estou fazendo um determinado aplicativo, para carregar no pendrive, para isso estou usando arquivo.xml para salvar o banco de dados, onde fica arquivo.xml, fica em uma pasta chamada Dados, que esta no diretorio do arquivo.exe, seria: Ex. X:\NoNoNo\Arquivo.exe X:\NoNoNo\Dados\Arquivo.xml Até ae tudo bem, funcionou belezinha, para reconhecer onde esta o Arquivo.xml, fiz assim: procedure TDataModule1.DataModuleCreate(Sender: TObject); var Path: String; begin Path:= ExtractFilePath(Application.ExeName); ClientDataSet1.FileName:= Path + 'Dados\Arquivo.xml'; ClientDataSet1.Active:= True; end; Sem problemas, mas acontece que preciso de um outro xml, que seria Arquivo2.xml. Então fiz procedure TDataModule1.DataModuleCreate(Sender: TObject); var Path: String; begin Path:= ExtractFilePath(Application.ExeName); ClientDataSet1.FileName:= Path + 'Dados\Arquivo.xml'; ClientDataSet1.Active:= True; ClientDataSet2.FileName:= Path + 'Dados\Arquivo2.xml'; ClientDataSet2.Active:= True; end; Daí o tal erro. Desabilitando, assim: // ClientDataSet2.FileName:= Path + 'Dados\Arquivo2.xml'; Roda normal. Será possivel alguma ajuda. Obrigado .
  6. Acabei conseguindo fazer de um maneira: procedure TFrm_Principal.Button1Click(Sender: TObject); var St: string; begin DataModule1.ClientDataSet1.Open; DataModule1.ClientDataSet1.First; repeat St:= DataModule1.ClientDataSet1.FieldValues['Tamanho']; ShowMessage(St); DataModule1.ClientDataSet_Itens.Next; until DataModule1.ClientDataSet_Itens.Eof; {finaliza ao final da tabela} end; No exemplo anterior, tentei com o laço for, neste acabei usando repeat-until. Gostaria de uma idéia melhor, se alguém tiver. Obrigado
  7. Estou com um pequeno problema, em banco de dados. Não obtive resposta em um outro tópico e estou quebrando a cabeça para resolver. Estou com a idéia, mas não sei como transferir para o Delphi. É mais ou menos assim: Tenho um banco de dados, com seus devidos campos, dois deles são "Nome" e "Tamanho", e dentro de um loop for, preciso pegar o "Nome" e "Tamanho" conforme o contador I, para comparar Tamanho com outro valor. Ex. var I, L: Integer; N: Real; X: Real; begin L:= ClientDataSet1.RecordCount; // tamanho, n° de registro N:= UmValorQualquer; // exemplo. for I:=0 to L -1 do begin // nesta linha preciso capturar o valor da celular na Linha[I] // da coluna "Tamanho" X:= ClientDataSet1.Valor[I]; //---> *** COMO FAZER??? *** if X = N then begin ... ... ... end; end; end; Só mais algumas informações, o banco de dados salvei em Data.xml, no diretório do executavel, há mais um DataModule1, onde se encontra o ClientDataSet1 e o DataSource1. Então na verdade, seria: X:= DataModule1.ClientDataSet1.Valor; //---> *** COMO FAZER??? *** Então, deu para entender o que preciso? Obrigado
  8. Ola pessoal,... Preciso de uma ajudinha. Estou fazendo um pequeno prog. com banco de dados, de armazenamento de arquivos, usei no para o bd, um TDataSource e um TClientDataSet, com armazenamento em xml no diretorio do executavel. O que preciso é o seguinte, dentre outros, há dois itens no bd, "Nome do Arquivo" e "Tamanho (MB)", preciso somar os itens tamanho, mas, digamos que, como um critério, somar criando uma lista dos arquivos que, por exemplo a soma não passe 2GB. O problema que me deparei, é que o banco de dados, tem um numero de dados variavel, com algo fixo seria mais facil. Mas, resumindo seria, fazer a soma de todas as combinações possiveis que não ultrapasse 2GB, acho que isso seria calculo de probalidade. Se alguém puder me ajudar, fico grato. T+
  9. Ola pessoal. Estou fazendo um pequeno programa para um amigo que tecnico em informatica. Ele vai usar esse programa a partir de um pendrive. É um programinha para fazer alterações no regedit. Ele pediu para que eu fizesse com opção de poder adicionar mais chaves de registro, se necessario, então preciso de banco de dados. Eu estava pensando em XML, gostaria de saber se possivel fazer de uma outra maneira. Qual o melhor? Obrigado.
  10. Não quero jogar em um memo para não ficar com muitos componentes. Tava pensando em salvar em um arquivo de texto (temporario ou não), salvando o código da página fazer a procura e quando for salvar outro código poderia usar o mesmo arquivo. É possivel fazer da maneira que voce fez, mas usando um arquivo de texto?
  11. Encontrei uma dica na net, mostrou o código que precisava: var LinkPag: String; begin LinkPag:= IdHTTP1.Get('http://www.4shared.com/file/6514429/e61457b3/delphi_-_a_biblia_-_borland.html?s=1'); Memo1.Lines.Add(LinkPag); end; Agora preciso de mais uma coisinha. No código da página, tem: function startPlayMedia(){ playMedia(document,'http://dc95.4shared.com/download/6514429/e61457b3/Delphi_-_A_Biblia_-_Borland.doc?tsid=20090709-221157-926ae2f1','doc'); document.getElementById("pButton").style.display = "none"; if( document.getElementById("smallImage") ){ document.getElementById("smallImage").style.display = "none"; } } O que preciso, é: http://dc95.4shared.com/download/6514429/e...221157-926ae2f1 (link do arquivo) e doc (extensão do arquivo) De preferencia sem precisar carregar em um memo ou outro componente parecido. Por exemplo, fornecer o link e ao invés de carregar o código inteiro, que me mostre o NomeArquivo.Ext. Como é que posso procurar esses dois itens no código da página. T+
  12. Mas, clicando com o botão direito na página e em Exibir Código-Fonte, é exibido todo o código, se não for todo o código, pelo menos o link que preciso aparece no código. Mas no programa feito em Delphi, não aparece o link. O que estou querendo fazer é um gerenciador de download (para uso pessoal) do 4shared.com, normalmente, é preciso clicar em "Download Now", depois esperar de 10 a uns 60 segundos, para então clicar em "Click here to download this file". Mas achei umas dicas na internet de como usar gerenciador de download para baixar arquivos no 4shared. Mas, precisaria pegar o links no código-fonte, arquivo por arquivo, daí pensei, porque não fazer um programa para isso. Entendeu? Deve haver uma maneira de fazer com que seja exibido mais código, além do html, pois manualmente posso ver.
  13. Consegui encontrar dois artigos de como mostrar o código html da página. Deu certo, mostrou. Mas, fiz o teste em uma página que preciso procurar a tal linha, não bem deu certo. Mostrou o código html, mas não mostro tudo porque na página tem código XHTML. Será possivel exibir esse tipo de código?
  14. Gostaria de saber se tem como ler o código fonte de uma página html qualquer (página de site, não de página armazenada no pc). Por exemplo: Copiar um link. A partir desse link, ler toda o código fonte da página, sem precisar exibir o código, mas que tenha a possibilidade de exibir, se necessário. Se for possível, algo desse tipo, o que pretendo fazer é ler o código (sem exibir o mesmo) e procurar por uma linha, ou um string/substring qualquer. Se alguém souber como ler, dá uma ajuda ae. Valeu T+
  15. RESOLVIDO Valeu pela atenção, mas acabei resolvendo, acho que o problema se enquadra no que voce mencionou em: "existe alguma rotina que talvez esteja procurando por algum arquivo e não sendo encontrado finaliza o executável" Ao rodar o setup (autorun do cd para instalar), abre um menu, eu só havia optada pela qual instala o programa, pois tem outras opções que não vou usar (pelo menos achava que não), então antes formatar, resolvi instalar todas as opções, tem uma que é: Install Delphi and C++ Buider 2009 Documentation Após instalar a tal documentation (que é instalado o help, e...), funcionou. E eu me matando e ocupando espaço do forum atoa. Mas, de qualquer forma, valeu.
  16. beleza, vou tentar, mas, não tenho certeza, acho que é por causa do XP-SP2 que estou usando. Estou quase formatando e instalando o SP3, queria uma 2ª opinião sobre isso.
  17. Não, não. Instalei o CODE GEAR Delphi C++ Buider 2009. bds.exe é o nome do executavel que chama tanto o Delphi quanto o C++, lá no menu iniciar tem dois atalhos, entre outros, em: Menu Iniciar/CodeGear RAD Studio 2009: C++Builder 2009 e Delphi 2009 em propriedades/destino do atalho "C++Builder 2009", "C:\Arquivos de programas\CodeGear\RAD Studio\6.0\bin\bds.exe" -pCBuilder em propriedades/destino do atalho "Delphi 2009", "C:\Arquivos de programas\CodeGear\RAD Studio\6.0\bin\bds.exe" -pDelphi Ou seja, um exe chama tanto o C++ quanto o Delphi, mas com parametros diferentes. E é esse exe (bds.exe), que não consigo executar, por consequencia, não consigo executar nem o Delphi 2009, nem o C++. OK.
  18. Pois é, não mencionei, mas já tinha feito isso com o gerenciador aberto. Quando é executado, aparece no gerenciador bds.exe (que é o nome do executavel), permanece por cerca de 1,5s, que é mais ou menos o tempo da tela de boas vindas, então some a tela e o nome do gerenciador tambem. Será que voce ou mais alguém poderia me ajudar a resolver este problema. Nesse caso da rotina, tem ideia do que possa ser.
  19. Ola pessoal, preciso de uma ajudinha com o Delphi 2009 + C++ Builder 2009. Foi instalado normalmente. Mas não consigo executar o danado. Clicando no atalho ou diretamente no executavel, só aparece a tela de boas vindas, ou melhor nem aparecer não aparece, só dá uma piscada na tela de boas vindas e nada de executar o Delphi. Talvez seja algo a ver com hardware, não sei. Estou usando: Pentium 4 - CPU 3.2 1GB RAM Video NVidia 512MB MS Win XP-SP2 Qualquer ajuda é bem vinda. T+
  20. luizf

    Tag MP3

    cara, dei uma olhada, mas não consegui ler, muito menos gravar as tags
  21. luizf

    Tag MP3

    Ola pessoal. Gostaria de saber se existe algum componente para o delphi, para escrever as tags de mp3 usando o delphi. Que são: Musica: --------------- Autor Titulo do CD Ano Numero da Faixa Genero Letras de Musica Descrição: --------------- Titulos Comentarios Origem: --------------- Protegido Audio: --------------- Duração Taxa de bits Canais Taxa de amostragem de audio Musica e Descrição, para serem lidos e alterados se necessario. Origem e Audio, para leitura. Uma vez encontrei um programa na internet que fazia alteração nas tags, mas era somente em cinco tags, e uma musica por vez. Quero que seja possivel alterar, pelo menos, as de Musica e Descrição, então fazer um programa para alterar tudo de uma só vez. Por exemplo: A tag Musica/Autor, se tiver umas vinte musicas todas do Pink Floyd, que seja possivel selecionar todas escrever Pink Floyd em todas. Mas, para isso preciso de algum componente para trabalhar com MP3, ou se possivel, criar um, ou alguma outra maneira qualquer, funcionando. Agordo uma resposta, obrigado. T+
  22. Ok então. Agradeço a colaboração de todos. Deixo a disposição se quiserem fechar o tópico, que pra mim esta resolvido. Tenho mais algumas outras duvidas, mas isso é uma outra conversa e um outro tópico. T+
  23. Olha s2pid, tambem pensei que fosse isso. Mas acredito não ser, pois se fosse, a chamada 'abrecd' só iria funcionar na primeira vez, sendo que na segunda vez, então seria 'abrecdabrecd'. Mas o que acontecia, era que sempre funcionava o que estava por primeiro, no caso, 'abrecd', mas se colocasse 'fecharcd' por primeiro iria funcionar, sempre. Sempre funcionava somente o primeiro comando, indenpendente de qual fosse. Então, acredito não ser esse o caso, mas de qualquer forma, valeu a intenção.
  24. Em casos como este, sempre faço o teste com ShowMessage. E aconteceu a mesma coisa, só era exibido na primeira chamada, as demais eram ignoradas. Já resolvi o problema, como mencionei acima. Só queria saber, se alguém souber, qual diferença nos dois modos. Antes eu estava fazendo: if Socket.ReceiveText='abrecd' then E agora: var texto: string; begin texto:= Socket.ReceiveText; // Para abrir if texto='abrecd' then No meu modo de ver, não mudou praticamente nada, apenas a verificação direta no Socket passou para um variavel. Se alguém puder me esclarecer o que houve, fico grato, pois futuramente se acontecer algo parecido vou saber o que poder ser, não neste caso que já esta resolvido, mas em algo futuro. Obrigado, T+
×
×
  • Criar Novo...