-
Total de itens
8.257 -
Registro em
-
Última visita
Tudo que Graymalkin postou
-
Bom, testei aqui e a segunda forma funciona perfeitamente. Experimente reparar o banco de dados aí. Abraços, Graymalkin
-
Sim, exatamente. Dez bytes pelo fato de ser uma string de tamanho variável e mais 5 pelo comprimento do texto. Ocuparia apenas 2 bytes, que é o tamanho de um inteiro (Integer). Com apenas 2 bytes é possível representar os valores de -32768 até 32767. Não, não tenho. Não tenho muita certeza a respeito, mas acho que ao visualizar um programa no Gerenciador de Tarefas (do XP ou 2000) o espaço usado para as variáveis fica incluído no "Uso de memória", mas posso estar errado. Abraços, Graymalkin
-
Como Criar Um Virus Em Delphi ?
pergunta respondeu ao Rodolfo_Pessanha de Graymalkin em Delphi, Kylix
Acho que isso acabou se tornando um estereótipo (assim como outros tantos que vemos aí fora: que todo político é ladrão, que toda modelo (ou loira) é burra, que todo cabeleireiro é homossexual, etc.). Um vírus não tem de ser necessariamente "mal" (usando o termo designado por vocês). Assim como qualquer outro programa (porque um vírus não passa de um programa) ele pode tanto fazer o "bem" quanto o "mal" (parece até que estamos falando de anjos e demônios... hehehe). Aliás, um vírus de computador é até de uma ordem de programas mais interessante que o habitual. Exercitando um pouco a imaginação pode-se chegar a conclusão de que o vírus digital foi a primeira "forma de vida" (por mais rudimentar que seja e não sucetível à Evolução, no sentido de que não existe competição) criada pelo Homem. O mero fato de que um executável é capaz de se replicar através da infecção em outros arquivos, por si só, já constitui um vírus de computador. Cabe julgar o que ele fará além disso, porém acredito que isso é do foro pessoal de cada um e cada qual deverá decidir se o que é feito (além da replicação) é "bom" ou "mau". Por isso não vejo justificativa para esse preconceito indiscriminado em relação ao assunto do tópico. Lembrem-se de que aqui é o melhor lugar para a divulgação de conhecimento de qualquer natureza (ligado ao tema, é claro). É uma pena que meus conhecimentos em Delphi sejam rudimentares o suficiente para que eu não possa dar um exemplo, caso contrário não me conteria em relação ao caso. Abraços, Graymalkin -
Dê uma olhada aqui: http://www.flexbeta.net/forums/index.php?showtopic=2609 Abraços, Graymalkin
-
Se é um valor, você deveria compará-lo com 0 ou verificar se o campo está nulo. Tente um dos seguintes exemplos: if mostra.fields("numero").value = 0 then Ou: if IsNull(mostra.fields("numero").value) then Abraços, Graymalkin
-
Dê uma olhada na cláusula GROUP BY. Abraços, Graymalkin
-
A idéia seria abrir cada um dos arquivos, ler todo o seu conteúdo, e gravar todos em um outro arquivo (porém colocando algo no início de cada parte, a fim de identificá-los). Para isso, dê uma procurada sobre as instruções Open e Print e as funções Input() e Lof() (isso para uma das maneiras de se fazer, mas existem outras). Se não me engano, aqui no fórum já tiveram tópicos sobre alguns desses. Abraços, Graymalkin
-
Não, Variant não ocupa 16 bytes por caracter. Quando utilizada com caracteres ela ocupa 22 bytes mais a quantidade de caracteres da string. No caso de ser usada com valores, ela ocupa 16 bytes (e guarda valores até o tamanho do Double). Portanto, a palavra "caixa" ocuparia 27 bytes. A mesma palavra, usando uma string de tamanho variável ocuparia 15 bytes, e de tamanho fixo ocuparia apenas 5 bytes. Abraços, Graymalkin
-
Como assim "abrir um projeto"? Graymalkin
-
Se sua intenção é abrir o navegador padrão com uma URL, você pode fazer: url = "http://www.graymalkin.globalhosts.com.br/" shell "explorer " & url Abraços, Graymalkin
-
Sim, tem. No caso você tem que fazer a ' do nome ficar dobrada (ou seja, ''). Para isso, você pode fazer o seguinte: nome = replace(txtNome.Text, "'", "''") E utilizar a variável nome ao invés de txtNome.Text na hora de montar a SQL. Abraços, Graymalkin
-
Não é possível dizer que isso esteja errado. Observe que na segunda declaração (a não ser que você esteja usando o .NET) as variáveis "motor", "carro" e "pecas" serão do tipo Variant enquanto que somente "quantidade" é do tipo inteiro. Já no primeiro caso, todas as variáveis estão com seus tipos devidamente ajustados. O tipo Variant é capaz de comportar todos os demais tipos, porém ocupa também mais espaço em memória. Abraços, Graymalkin
-
Supondo que Text4 é onde deverá ficar a concatenação dos textos das outras três textboxes, bastaria fazer: text4.text = text1.text & "-" & text2.text & "-" & text3.text Abraços, Graymalkin
-
Continua parecendo tudo certo. Mas, todos os campos são realmente do tipo TEXTO? E, ainda está ocorrendo algum erro aí? Se sim, qual? Abraços, Graymalkin
-
Eu manjo quase nada de C/C++, mas você pode procurar a respeito de criar objetos COM a partir do mesmo. Conseguindo isso, você pode criar objetos do ADO como o Connection e o Recordset e trabalhar com eles praticamente do mesmo jeito que em VB. Abraços, Graymalkin
-
Aparentemente está certo, mas você tem certeza que o nome (na propriedade Name) da textbox é esse mesmo? Abraços, Graymalkin
-
Brother, dê uma procurada no fórum antes de postar. Os seguintes tópicos já falam disso: http://scriptbrasil.com.br/forum/index.php?showtopic=18589 http://scriptbrasil.com.br/forum/index.php?showtopic=4448 http://scriptbrasil.com.br/forum/index.php?showtopic=24053 http://scriptbrasil.com.br/forum/index.php?showtopic=24462 http://scriptbrasil.com.br/forum/index.php?showtopic=21134 Abraços, Graymalkin
-
Existem duas maneiras simples de se fazer isso. Uma delas é utilizando um Recordset e a outra maneira é utilizando apenas SQL. Vou colocar aqui exemplos das duas formas (na opção References... do menu Project marque o Microsoft ActiveX Data Objects 2.x Library, onde o ".x" representa a versão mais nova que você tiver disponível aí): 'No General Declarations: dim cn as new ADODB.Connection dim rs as new ADODB.Recordset 'No Load do form: cn.CursorLocation = adUseClient 'Define o cursor como local cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\pasta\arquivo.mdb" 'Abre o BD rs.Open "SELECT * FROM usuarios", cn, adOpenDynamic, adLockOptimistic 'Abre a tabela no objeto "rs" 'No evento Click de um botão (considerando que você tem duas textboxes, chamadas txtNome e txtSobrenome de onde virão os valores a serem inseridos): rs.addnew 'Adiciona um registro em branco rs.fields("nome").value = txtNome.text 'Preenche um campo rs.fields("sobre_nome").value = txtSobrenome.text 'Preenche o outro campo rs.update 'Salva o registro Isso acima é um exemplo inteiro. O outro seria (conservando apenas a declaração do "cn" no General Declarations e a abertura do banco de dados no evento Load, ou seja, tudo relacionado ao "rs" desaparece): 'No evento Click de um botão (considerando que você tem duas textboxes, chamadas txtNome e txtSobrenome de onde virão os valores a serem inseridos): dim sql as string sql = "INSERT INTO usuarios (nome, sobre_nome) VALUES ('" & txtNome.text & "', '" & txtSobrenome.text & "');" cn.Execute sql Bom, qualquer dúvida, posta aí. Abraços, Graymalkin
-
Dê uma olhada nestes tópicos: http://scriptbrasil.com.br/forum/index.php?showtopic=28279 http://scriptbrasil.com.br/forum/index.php?showtopic=30727 Abraços, Graymalkin
-
Ah tá, eu aqui usei o Microsoft Outlook Express e não o Microsoft Outlook do Office. O código não deve estar funcionando porque o mesmo procura uma janela de título "Outlook Express". Veja qual é o título da janela do Outlook que aparece aí e experimente mudar no código. Abraços, Graymalkin
-
Eu vi mas deixei queto...não quero comprar mal entendido com ninguém...deixa prá lá vai... Abraços, William Rodrigues sobre o extenso... fiz o exemplo para ajudar no meu pedido... e não deixa d ser por extenso tb.. obrigado ae pela ajuda []s Sem problemas. . Apenas é que vejo mais gente procurando rotinas do tipo extenso "cinco reais e vinte e quatro centavos" e achei que talvez fosse essa que você estivesse procurando. Abraços, Graymalkin
-
Não é exatamente um "banco de dados" (aliás, alguns podem dizer que passa bem longe), mas dê uma pesquisada sobre criar arquivos a partir de estruturas definidas pelo usuário (aquelas que fazemos com declaração Type... End Type). Abraços, Graymalkin
-
Rascunhei essa função aqui (coloque em um módulo): Public Function PorExtenso(ByVal valor As String) As String Dim s As String s = Replace(valor, "R$ ", "") partes = Split(s, ",") If partes(0) = "1" Then nome1 = " real" Else nome1 = " reais" End If If partes(1) = "01" Then nome2 = " centavo" Else nome2 = " centavos" End If PorExtenso = partes(0) & nome1 & " e " & partes(1) & nome2 End Function Ela não está completa, mas já pra ter uma idéia. Um exemplo de uso: msgbox porextenso("R$ 5,24") Agora... isso é por extenso??? Não seria algo do tipo "cinco reais e vinte e quatro centavos"? Que eu saiba isso é por extenso. Abraços, Graymalkin
-
No caso, você terá que ter um programa que ficará rodando o tempo e "monitorando" esses "eventos" de que você fala. Para isso, você pode usar um Timer (definindo a propriedade Interval dele para uma determinada quantidade de milissegundos). Dentro desse Timer os "eventos" seriam "monitorados" e de acordo com isso você chamaria o executável que quisesse. Abraços, Graymalkin
-
Ok, então você está usando DAO. Então, você pode marcar o Data Bound Grid na opção Components do menu Project. Após inseri-lo no form, você pode usar algo assim: set dbgrid1.datasource = data1.recordset Dá uma olhada se é isso aí que você quer. Abraços, Graymalkin