Ir para conteúdo
Fórum Script Brasil

Graymalkin

Veteranos
  • Total de itens

    8.257
  • Registro em

  • Última visita

Tudo que Graymalkin postou

  1. Hummm... isso você pode fazer por uma chave no registro. Não me lembro qual é ela exatamente, mas se você abrir o Regedit e procurar pelo seu IP atual você com certeza a encontrará. Só não sei se a mudança lá é efetivada na hora ou se vai ser necessário reiniciar o computador. Abraços, Graymalkin
  2. Não sei se entendi bem qual foi a sua solução, mas quando você declara um objeto assim... Classe *Objeto; ... você tem que utilizar o operador -> para fazer referência aos membros. Já quando é... Class Objeto; ... você tem que utilizar o ponto (.) mesmo. Mas, geralmente, o compilador te avisa sobre isso. Abraços, Graymalkin
  3. Isto é feito na hora da execução. No caso, o MSIL são bytecodes que só são entendidos pela .NET Framework e quando o programa é executado é que os bytescodes são convertidos para a linguagem de máquina da plataforma e executados. É bem semelhante ao modo de execução de Python e Java, por exemplo. Abraços, Graymalkin
  4. O nome da tabela está realmente certo? É "clinte_hospe"? Abraços, Graymalkin
  5. No caso, você vai ter que alterar a estrutura do nó para poder guardar os dados que você quer. A estrutura daquele lá na página é: typedef struct no { int value; struct no *next; } lista; O importante ali é o int value que é o campo que armazenará o "valor" do nó. No caso, é um inteiro (int). A idéia é trocar ele pelo tipo de dado que você quer armazenar (que pode ser outra estrutura, como a que você declarou no seu código). Não estou com tempo agora, mas posso ver se no próximo final de semana eu faço um exemplo disso pra você. É só me lembrar. Abraços, Graymalkin
  6. E não dá erro enquanto você preenche a data? Para campos textos este lance de ir preenchendo e ele buscando é tranquilo, porém para dados que só tem algum significado quando estão completos (como é o caso de uma data) isso não é lá muito prático de se fazer. Relendo seu primeiro post eu notei o seguinte "pois com ela só aparece o registro que digitei a data de vencimento quando termino de digitar e não como o sql faz trazendo todos os registros parecidos". Uma data só é uma data se estiver completa, ou seja, se tiver dia, mês e ano, no mínimo. Você quer procurar datas incompletas? Se o cara digitar "25/ / " você quer procurar os registros só com esse 25? Se for, a lógica vai ser bem diferente do normal. De qualquer maneira, acredito que você poderia fazer isso aqui no evento OnChange da MaskEdit: var busca : Boolean; begin busca := True; try StrToDate(MaskEdit1.Text); except on EConvertError do busca := False; end; if (busca) then begin ... end; end; Isso faria com que a busca só fosse executada quando fosse inserida uma data válida na MaskEdit. Seria isso que você quer? Abraços, Graymalkin
  7. Qual o evento da MaskEdit que você utiliza para realizar a busca? Talvez fosse o caso de fazer uma exceção neste evento para não realizar a busca quando for o caso da máscara, não? Abraços, Graymalkin
  8. Você *não* colocou o código que eu falei... Olha o seu código: cnn.ConnectionString = "provider=Microsoft.Jet.OLEDB.4.0;data source=" & App.Path & "\Fitlau.mdb;" & "\Fitlau.mdb;Password=system;" Tem "Fitlau.mdb" duas vezes. Além disso, App.Path retorna o caminho sem a última barra quando se trata da raíz de uma unidade (D:) e com a barra quando se trata de uma pasta (C:\Teste\). Mas, afinal, você quer fazer isso em um ADODC ou em um objeto ADODB.Connection??? Se for no ADODC você vai ter que preencher a propriedade ConnectionString do mesmo *via código* e não nas propriedades dele no form. Experimente colocar isso aqui no Load do form que tem o ADODC: pasta = iif(right(app.path, 1)="\", left(app.path, len(app.path)-1), app.path) arquivo = pasta & "\Fitlau.mdb" Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & arquivo & ";Persist Security Info=False" Adodc1.Refresh E deixe *vazia* a propriedade ConnectionString do ADODC no form. Abraços, Graymalkin
  9. Você sabe percorrer o vetor, certo? Porque é isso que o código abaixo faz: for (i=0; i<N; i++) { printf("Nome: %s Tamanh %d\n\n",vetor[i].ID,vetor[i].tamanho); } Então, bastaria chamar a função de inserção (que tem na página que você indicou) para cada um dos elementos do vetor. Abraços, Graymalkin
  10. Graymalkin

    Impressão Api

    Bom, acredito que cada vez que você chama GetProcessHeap() você pega uma pilha de processos *nova*, portanto você está pegando pilhas diferentes quando cria e quando libera. Acredito que você deveria fazer algo assim: hHeap = GetProcessHeap() TempBuff = HeapAlloc(hHeap, 0, pcbNeeded) ret = EnumJobs(hPrinter, 0, 127, 1, TempBuff, pcbNeeded, pcbNeeded, pcReturned) CopyMem Jobs(0), ByVal TempBuff, pcbNeeded ... If TempBuff Then HeapFree(hHeap, 0, TempBuff) Note que o mesmo hHeap que é passado para a alocação e passado para a desalocação. Acredito que isso não acontecia no seu código, uma vez que você chamava GetProcessHeap() duas vezes (note que eu chamei apenas uma). Não testei o código acima, mas acho que deu pra pegar a idéia, né? ;) Graymalkin
  11. Mas, você já implementou as funções para lidar com listas circulares ou têm elas prontas aí? Graymalkin
  12. Como assim? A grade fica vazia depois que você coloca a máscara na EditMask? Graymalkin
  13. Graymalkin

    Valor

    Então procure em Ferramentas -> Controles Adicionais no VBA. Abraços, Graymalkin
  14. Não estaria faltando inicializar os objetos do vetor? Ou seja, criar os objetos antes de tentar acessá-los? Veja se o seguinte exemplo funciona aí: #include <iostream> #include <stdlib.h> #include <string> #include <vector> using namespace std; int main() { vector<string> palavras; vector<string>::iterator palavra; palavras.push_back(string("isto")); palavras.push_back(string("é")); palavras.push_back(string("um")); palavras.push_back(string("teste!")); for ( palavra = palavras.begin(); palavra != palavras.end(); palavra++ ) { cout << *palavra << endl; } system("pause"); } E onde você arrumou essa AnsiString? Não achei aqui no Dev-C++, por isso fiz com strings normais de C++. Abraços, Graymalkin
  15. Graymalkin

    Datagrid

    Com o mouse? Cara, acho que isso é meio difícil uma vez que uma DataGrid se torna apenas uma tabela em HTML (as tags table, tudo, tr, etc.) quando é enviada ao cliente. Já experimentou procurar alguma solução em JavaScript para o problema? Não sei se existe, mas eu procuraria isso com JavaScript, uma vez que este seria um tipo de manipulação que ocorreria do lado do cliente e não do servidor. Abraços, Graymalkin
  16. Graymalkin

    Aplicação Em Vb

    O que você quer exatamente? Fazer streaming? Abraços, Graymalkin
  17. Graymalkin

    Arquivos Binários

    Você fez uma matriz de bytes, correto? Sim, exatamente. O segundo parâmetro do construtor de um StreamWriter, naquele caso, se chama Append e define se você quer adicionar a um arquivo existente ou recriá-lo do zero. O False então diz que ele deve sempre recriar o arquivo e nunca gravar no final de um que já exista (se não fosse isso, na segunda vez que você executasse o arquivo ficaria com o dobro do tamanho porque ele mesmo seria adicionado ao destino). É, também podem ser utilizados, mas StreamReader e StreamWriter são mais práticos porque leêm e gravam strings (sim, eu sei que BinaryWriter também faz isso, mas ele também exige a criação de um objeto Stream). Abraços, Graymalkin
  18. Sim, a idéia é interessante, porque os conceitos são os mesmos para qualquer linguagem. Porém, a tendência natural das pessoas é buscar a solução na linguagem utilizada, então acredito que o pessoal continuaria postando nas respectivas áreas (como VB e C/C++, por exemplo). Sim, poderíamos mover os tópicos para a nova sala, mas será que é realmente necessário? Ela teria movimento o bastante para justificar sua criação? Ou seria melhor criar sub-salas para isso nas respectivas linguagens mais procuradas? Abraços, Graymalkin
  19. Nunca fiz algo assim (não com ASP.NET), mas acho que você deveria procurar por um "chat" com ASP.NET, não? Eu encontrei isso daqui se ajudar: http://www.codeproject.com/useritems/simplechat.asp Abraços, Graymalkin
  20. Subclassing é basicamente você interceptar as mensagens que uma determinada janela (e por "janela" leia-se qualquer controle no Windows, como janelas, botões, caixas de texto, etc.) recebe e manipulá-las para fazer coisas como "colorir os itens de uma combobox". Seria mais-ou-menos, como o próprio nome sugere, uma "herança" (subclass é um sinônimo de herança no jargão OO). Só não fica tão bonito quanto uma herança em OO (e é daí que venha a razão de eu chamá-la de "obscura"). :) Abraços, Graymalkin
  21. Exatamente. Uma vez que um objeto do tipo Object pode acomodar qualquer outro, se eu colocar uma String nele, é de se pensar que ele possa fazer qualquer coisa que uma string pode, certo? Ou seja, se eu *sei* que uma string tem um método SubString() (que retorna parte dela), é natural eu pensar que um objeto Object que faça uma referência a essa string também tenha esse mesmo método, correto? Em VB isso é verdade, mas em C#, por exemplo, não. Aliás, até dá pra chamar o método em C#, mas você vai escrever muuuuiiiitttooo mais do que o normal. Tem um artigo meu sobre isso (utilizar late-binding com C#) em um dos tópicos aqui do fórum, mas eu também publiquei ele aqui: http://www.onmasters.com.br/?area=ler_arti...rtigos&artid=61 Abraços, Graymalkin
  22. Graymalkin

    Arquivos Binários

    Eu acho bem mais prático ler o arquivo para um array de bytes e acessar as posições diretamente. Veja um exemplo abaixo: Dim nomearq As String = "c:\arquivo.exe" Dim arquivo As New StreamReader(nomearq, System.Text.Encoding.Default) Dim conteúdo As String = arquivo.ReadToEnd() arquivo.Close() Dim b() As Byte = System.Text.Encoding.Default.GetBytes(conteúdo) b(256) = Asc("J") b(257) = Asc("a") b(258) = Asc("b") b(259) = Asc("a") Dim gravar As New StreamWriter("c:\teste.exe", False, System.Text.Encoding.Default) gravar.Write(System.Text.Encoding.Default.GetString(b)) gravar.Close() Sacou? ;) Veja que isso é só um **exemplo** e é óbvio que você *pode* (mas acho que nem precisa, uma vez que você sabe o offset inicial) precisar de um laço For para ir trocando os bytes, a diferença é que você não vai precisar *caminhar* com o For até lá. Abraços, Graymalkin
  23. O que é uma "caixa de seleção"? Sua idéia é mostrar uma pergunta com várias alternativas como respostas para o caboclo escolher uma? E cada pergunta valer uma determinada quantidade de pontos? Se for isso, acredito que dê para fazer sim, através de VBA. Abraços, Graymalkin
  24. Com o jeito que eu falei acima (comunicar via WebBrowser) acredito que daria para fazer isso (o PHP ativar o módulo no Access). Isso você pode fazer por automação, criando um objeto Excel.Application através da função COM(). Mas, você pretende executar o PHP no servidor ou no cliente? Quero dizer, você vai instalar o interpretador PHP na máquina cliente para executar um script? Ou você vai utilizar o PHP para gerar páginas dinâmicas (ou seja, funcionando no servidor)? Isso porque o lance de abrir o Excel e escrever algo nele depende de onde o PHP vai estar sendo executado. Abraços, Graymalkin
  25. Retirar esse... On Error Resume Next ... do começo e roda o script para você ver se ocorre algum erro (provavelmente deve estar ocorrendo). A linha acima diz para ignorar qualquer erro, então desta maneira você só diminui as chances de encontrar o problema (uma vez quando o erro ocorre ele te diz onde é). Abraços, Graymalkin
×
×
  • Criar Novo...