Ir ao conteúdo
  • Cadastre-se

Gabe Grechuk

Membro Pleno
  • Posts

    89
  • Cadastrado em

  • Última visita

Tudo que Gabe Grechuk postou

  1. Ta aí uma desafio. Essa config é bem fraquinha pra instalar um android e rodar netflix, por exemplo, então poderia tentar colocar algum linux para rodar em ARM, como um Arch Linux ou um Gentoo se você for mt tryhard, mas ainda assim não da pra fazer muita coisa com essa config e sem informações do hardware você n vai muito além de uma linha de comando Mas eu dei uma olhadinha no manual dele, e parece ser bem completinho, toca vídeo, pega TV, da pra ler "e-books" (arquivos .txt, mas ta valendo). Talvez colocar alguns livros e alguns filmes em um cartão de memória já da uma função nova pra ele. Mas colocar outro sistema nele provavelmente não vai ficar do jeito que você gostaria
  2. A config tá ótima, mas essa placa-mãe é para processador intel Eu recomendaria uma A320M, que ta na mesma faixa de preço que essa H310, ou então uma B450M que eu vi com umas promoções bem bacanas
  3. Roda tranquilo Mas seria interessante tu colocar a configuração completa do seu PC, aí da pra ver o que seria interessante dar um upgrade e melhorar tua experiência na jogatina ou trabalho
  4. Se você estiver usando o Windows 10, pode atualizar os drivers direto pelo Windows Update. Se for algum bug de algum driver novo da AMD, instalar o driver WHQL direto pelo Windows resolveria o problema. Caso não resolva, aí pode ser algum outro problema relacionado a hardware ou configuração de vídeo Convém também postar a configuração da máquina, se é notebook e se é o primeiro uso ou já usou o pc antes
  5. Sim, a maioria desse tipo de ferramenta é criada através de engenharia reversa Sempre existe um padrão comum que você espera encontrar em todos os sistemas operacionais, como controle de memória, administração de threads entre outras coisas que o computador precisa pra funcionar. Geralmente quando você vai tentar encontrar alguma vulnerabilidade, você já tem noção de como esse tipo de programa é criado e sabe onde provavelmente pode ter alguma brecha Mas no caso do pegasus, ele une um pouco de duas coisas, ele exige que o usuário clique em algum link malicioso ou algo do tipo pra aí sim ele poder usar as falhas de segurança do dispositivo pra poder se instalar e ficar espionando Inclusive, recomendo ficarem um pouco atentos aí porque parece que o governo brasileiro ta tentando comprar uma cópia para ficar espionando a população. Então você que é jornalista ou ativista critico do governo, fica meio espero com msg de texto, links e anúncios duvidosos
  6. Hi dear @isvkt I guess you are trying to use Win32, right? Since Win32 is an event driven API, it will tell your program that the left mouse button was pressed with an event signal, witch you need to process with a Win32 event loop Something like this: #include <windows.h> int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) // This is the "main()" function in win32. { MSG msg; // Event structure that windows will send to you program (Mouse button down, close, resize etc). // Event loop will send all the messages to a callback function to be processed. while(GetMessage(&msg, NULL, 0, 0) > 0) { TranslateMessage(&msg); DispatchMessage(&msg); } return msg.wParam; // "main()" returns the event info. } // This is the callback function where you will process the events. LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) switch(uMsg) { // The event is a mouse left button pressed. case WM_LBUTTONDOWN: { // Your code to move mouse cursor goes here. } break; default: // In case of any other event, let Windows process it. return (DefWindowProc(hWnd, uMsg, wParam, lParam)); break; } return 0; } Hope this helps you
  7. Boa noite @Clarice Paula Análise de malware é uma área meio complicada mesmo de início, mas você precisa manter o foco em dar um passo de cada vez, e manter em mente que é um caminho bem longo pra trilhar. Mas nada impossível se você for persistente em aprender Mas a minha dica é que você pratique, crie seus próprios malwares, assim você vai começar a perceber caminhos pelos quais os malwares se infiltram e quais falhas de segurança são mais fáceis de explorar Also, da uma olhada nesse vídeo do Gabriel Pato se aventurando na análise de malware, é bem interessante ver como ele lida com o problema e encontra soluções
  8. Boa noite meu caro @Dérick Soares Pelo que eu entendi, o enunciado pede para você implementar um loop que pegue as informações dos empregados 15x e execute alguns cálculos com essas informações. Mas a solução parece que não foi bem escrita ou ta faltando um pedaço dela Se fosse eu resolvendo esse exercício, eu faria com um loop for, no lugar de um do..wile #include <stdio.h> #include <stdio.h> #include <stdlib.h> int main(){ for(int i = 0; i < 15; i++) { // Declarando as variáveis dentro do loop, pois assim você limita o escopo delas // para essa interação do loop apenas, garantindo que você não vai ta usando lixo // resultante das execuções anteriores e gerar resultados errados para os calculos. float salbruto, salliquido, imposto, totbruto=0, totliquido=0, totimposto=0; printf("Digite o salario bruto: "); scanf("%f", &salbruto); if (salbruto > 999) imposto = salbruto * 0.10; else if (salbruto > 1999) imposto = salbruto * 0.15; else if (salbruto > 9999) imposto = salbruto * 0.20; else if (salbruto > 99999) imposto = salbruto * 0.25; else imposto = salbruto * 0.30; salliquido = salbruto - imposto; printf("Salario liquido: %.2f \n", salliquido); totbruto = totbruto + salbruto; totliquido = totliquido + salliquido; totimposto = totimposto + imposto; printf ("-------------------------------\n"); printf ("Total salario bruto : %.2f \n",totbruto); printf ("Total salario liquido : %.2f \n",totliquido); printf ("Total imposto : %.2f \n",totimposto); printf("\n\n"); } return 0; } Dentro do próprio loop for a gente já declara a variável de controle, a condição de saída do loop e o incremento da variável de controle Mas como você disse que precisa escrever o código com do..while, eu escreveria ele assim: #include <stdio.h> #include <stdio.h> #include <stdlib.h> int main(){ int contador = 0; // Variável para controlar a saída do loop. do { float salbruto, salliquido, imposto, totbruto=0, totliquido=0, totimposto=0; printf("Digite o salario bruto: "); scanf("%f", &salbruto); if (salbruto > 999) imposto = salbruto * 0.10; else if (salbruto > 1999) imposto = salbruto * 0.15; else if (salbruto > 9999) imposto = salbruto * 0.20; else if (salbruto > 99999) imposto = salbruto * 0.25; else imposto = salbruto * 0.30; salliquido = salbruto - imposto; printf("Salario liquido: %.2f \n", salliquido); totbruto = totbruto + salbruto; totliquido = totliquido + salliquido; totimposto = totimposto + imposto; printf ("-------------------------------\n"); printf ("Total salario bruto : %.2f \n",totbruto); printf ("Total salario liquido : %.2f \n",totliquido); printf ("Total imposto : %.2f \n",totimposto); printf("\n\n"); contador++; // Aqui a gente incrementa a variável de controle. } while(contador < 15); // Todo laço do..while precisa dessa declaração while no final. // É ela que especifica qual a condição de saída do loop. // O seu código não ta compilando pois na sua implementação ela // ta faltando. return 0; } Mas como você parece ser iniciante, ta tendo um pouco de dificuldade com loops. Isso é normal, controle de fluxo é perrengue assim mesmo no começo ksksksks Da uma olhada nesse link aqui que ele explica certinho cada tipo de loop e você vai conseguir se situar melhor quando precisar implementar mais um desses https://sites.google.com/site/itabits/treinamento/introducao-a-programacao-em-c/comandos-de-repeticao
  9. @Rogresão Rodrigues Costa você não esta conseguindo usar o system("pause") porque está faltando importar a biblioteca padrão do C para permitir você se comunicar com o sistema. Tenta escrever ele assim: #include <stdlib.h> // Essa bilioteca para poder roda comandos no sistema operaciomal como system("pause"). #include <stdio.h> int main() { float raio, perimetro; double Pi = 3.1415927, area; printf("Introduza o raio da circunferencia: "); scanf("%f", &raio); area = Pi * raio * raio; perimetro = 2 * Pi * raio; printf("Area = %f\nperimetro = %f\n", area, perimetro); system("pause"); }
  10. @Jenny0102 Nesse caso vale a pena usar o Windows mesmo, ele no geral sabe qual driver usar e geralmente é um driver testado e validado pela WHQL. Assim que terminar de formatar, abre o Windows update e coloca ele pra atualizar, geralmente ele busca tudo o que precisa e instala automaticamente Não é nem sobre o driver de barramento, é só pra confirmar se todos os drivers estavam instalados. As vezes algum driver instalado errado ou defeituoso acaba interferindo em outros componentes, como os gráficos Quando terminar de formatar, da um feedback pra saber se deu certo ou não
  11. Realmente é uma coisa rara de se acontecer Consegue me dizer o modelo do processador qual sistema operacional você esta usando? você sabe me informar se baixou todos os drivers do seu notebook que não fossem estritamente relacionados aos gráficos, como drivers de barramento etc? E se baixou, foi direto do site da fabricante ou pelo Windows Update?
  12. [RESOLVIDO] Finalmente consegui resolver o problema do positivo sem necessidade de usar o cartão de memoria O problema estava numa configuração na BIOS que impedia o computador de escrever na memória interna Pra resolver é um seguinte. Entra na BIOS e navega: Chipset > South Bridge > LPSS & SCC Configuration > eMMC Write Protect Muda de [Enabled] para [Disabled] Salva e reinicia E já pode formatar o notebook normalmente
  13. @wagner2029 Verdade, estou fortemente inclinado a deixa pra lá e entregar de volta pro cliente
  14. É uma pergunta interessante. Não sou muito entendido do assunto, mas posso correr atrás de algumas referencias se quiser se aprofundar e também posso te ajudar a entender pelo menos a lógica do processo Não sei se você entende de computador, mas é valido considerar a placa de um controle como um pequeno computadorzinho: ele possui alimentação, memória, um processador e armazenamento. Tudo bem condensado e junto, com o objetivo interpretar os botões do controle, por exemplo O processador do controle -- pode ser um chip ou um micro controlador --, assim como seu computador, roda um determinado conjunto de instruções básicas que são os códigos Assembly, representados por um monte de 0 e 1. A função do compilador é converter o código de C++ para assembly. Para entender o processo, vale entender as diferenças de um código C++ pra um código Assembly: Código C++ é uma forma de você dizer o que ao compilador o que você quer que instrua a máquina a fazer, e isso te dá liberdade de usar formas mais sofisticadas e confortáveis de arquitetar seu programa, usando recursos como variáveis para reservar espaços na memória, funções para poder dividir seu código em pequenas partes, orientação a objetos para separar cada funcionalidade em um objeto e fazer eles trocarem informações etc. Já o Assembly, é você dizendo ao processador exatamente o que quer que ele faça, passo a passo. Veja o exemplo da diferença de um pseudo código entre C++ e assembly para somar os números 50 e 25. // Em C++ int resultado = 50 + 25; E o compilador vai converte-lo para algo parecido com isso: ; Em Assembly mov ax, 32h ; Coloca o valor 50 em hexadecimal (32) no registrador de memoria AX. mov bx, 19h ; Coloca o valor 25 em hexadecimal (19) no registrador de memoria BX. add ax, bx ; Soma os valores O código Aassembly é a ultima camada entre você e o processador em sí. Cada instrução vai ser convertido diretamente para o seu equivalente em código de máquina, se quiser, pode escrever manualmente, tipo, o mesmo exemplo acima poderia ser escrito como B0 32 ; Coloca o valor 50 no AX. 88 19 ; Coloca o valor 25 no BX. 05 ; Soma valores *Na real, isso aqui é só pra ilustrar, a instruções variam de acordo com a arquitetura e o chip e posso ter errado na implementação também ksks. Que no final, vai ser escrito em uma fileira de bits eu o processador vai poder entender tranquilamente, como no exemplo 10110000 00110010 ; Grava 50 no AX. 10001000 00011001 ; Grava 25 no BX. 00000101 ; Soma. Aí essas instruções vão ser guardadas na memória da plaquinha como 1011000000110010100010000001100100000101 Sempre que a plaquinha for ligada, ela vai ler essa fileira de 0 e 1 e fazer a soma de 50 e 25. Rodando o código que você escreveu em C++, que foi convertido e guardado na memoria dela Nada de muito complicado, é só meio difícil de entender no começo, mas se você for programar, vai se acostuma com o tempo
  15. @wagner2029 Usar pelo usb é uma boa ideia, mas ainda assim, é meio arriscado. O nunca se sabe o que um cliente vai fazer ksks @Adriel SG Vou dar uma olhada como funciona o firmware do Raspiberry, talvez eu encontre algo que possa me ajudar
  16. Boa tarde pessoal. Estou com um problema bastante peculiar e específico Estou prestando assistência em um notebook Positivo Motion Q (Esse aqui da foto do anexo). O objetivo era formata-lo, porém, o a memória interna dele está com algum defeito: não é possível realizar escrita de nenhuma forma. Nem um único byte em nenhum setor se quer. Então tiver a ideia de instalar o sistema operacional dentro de um cartão SD. Seria uma solução perfeita, sem ter um pendrive trambolho atrapalhando a movimentação e sem risco de retira-lo com o notebook ainda funcionando. Porém, o notebook não reconhece o Cartão na BIOS para dar boot Posteriormente, consegui iniciar o computador pelo shell EFI, onde eu pude fazer alguns testes e tentar encontrar a imagem de inicialização do meu sistema dentro do SD e iniciar manualmente, e não foi surpresa nenhuma perceber que o Firmware do notebook não reconhece a mídia. Creio que o suporte ao cartão SD seja possível apenas possível através de drivers instalados no sistema operacional Dada essa situação, qual seria a melhor maneira de prosseguir? Tive a ideia maluca de utilizar um script criado para rodar dentro do shell EFI, para ser possível carregar um bootloader e um kernel (provavelmente Linux, da mesma forma que é feito com o initrd) na memória RAM, assim seria possível utilizar ele para o notebook reconhecer o Cartão SD e iniciar o sistema operacional. Mas o problema é: como eu poderia fazer isso, se não há formas de manter essas informações dentro da memória interna do notebook Existe alguma jeito de salvar alguma coisa ou script dentro do Firmware (BIOS) do notebook ou algo do tipo? Existe alguma outra solução para esse problema? desde já agradeço pela ajuda
  17. Bom dia pessoal Eu gostaria de saber como eu posso encontrar materiais voltados a eletrônica. Tudo o que encontro na web sobre são cursos duvidosos; os materiais efetivamente são muito escassos, não consigo encontrar livros ou apostilas sobre o assunto. Gostaria da ajuda de vocês nesse quesito desde já, agradeço
  18. A primeira coisa a ver é se o vs code ta conseguindo executar o compilador Abre um terminal no windows (iniciar > cmd [enter]) e digita gcc --version se ele retornar a versão do compilador, significa que está tudo configurado no path do sistema e o problema está na configuração do VS Code Se retornar que não é um comando ou programa, você vai precisar rever os path do sistema pra ajeitar tudo certinho
  19. @rodrigo.dcvieira realmente, eu não estava considerando o fato de hds serem efetivamente lentos, mas pelo que você disse, é algo que eu deveria prestar mais atenção, e de quebra, ainda prestar atenção na transferência de arquivos pequenos muito obrigado pela sua resposta! Aliás, você teria algum material pra me ajudar a me aprofundar melhor nisso?
  20. Olá a todos Eu trabalho com TI há algum tempo, e ainda tenho dificuldade em analisar a saúde de um Disco Rígido, muitas vezes as informações do S.M.A.R.T. dizem que o HD está ok e os benchmarks que realizo o dão como excelentes para armazenar e transferir arquivos. Porém, quando tento formatar ele e colocar um Windows, por exemplo, sempre acaba ficando uma porcaria. Gostaria de pedir ajuda com essa questão; como faço para determinar se um HD está apto para rodar um sistema operacional de forma satisfatória, ou os casos em que não é possível usa-lo para rodar um SO, mas pode ser utilizado tranquilamente apenas para armazenar arquivos desde já, agradeço a atenção! :D
  21. Opa, tudo bom? Acho que o seu principal erro foi na declaração da variável v_imc. O calculo só deve ser feito depois que o usuário entrou os valores. O fato de aparecer sempre o ultimo else se da ao fato de que as variáveis v_altura e v_peso não fora iniciadas, logo estão recebendo lixo de memória como entrada. Assim, como o v_imc está sendo calculado logo depois das variáveis estarem sendo declaradas, o resultado dele também vai ser lixo de memória #include <stdio.h> #include <stdlib.h> /* Dei uma alterada na indentação pra melhorar a legibilidade do código, espero que não se incomode */ int main() /* Main sempre deve ter algum valor de retorno */ { /* Iniciei todos os valores com 0, para não ficarem com lixo como valor */ float v_altura = 0.0; float v_peso = 0.0; float v_imc = 0.0; printf("\n\nEste e um programa para medir seu IMC, vamos la ?\n\n"); printf("Primeiro insira a sua altura EX: 1.80.\n\n"); scanf("%f",&v_altura); printf("\n\nOtimo, agora insira seu peso EX: 78,6.\n\n"); scanf("%f",&v_peso); printf("\n\nCalculando..\n\n"); v_imc = (v_altura*v_altura)/v_peso; /* O calculo será feito só depois que os valores já foram entrados pelo usuário*/ printf("Prontinho, seu IMC e de: %.2f\n\n\n",v_imc); printf("Tabela IMC:\n\nAbaixo de 17 \tMuito abaixo do peso\nEntre 17 e 18,49 \tAbaixo do peso\nEntre 18,5 e 24,99 \tPeso normal\nEntre 25 e 29,99 \tAcima do peso\nEntre 30 e 34,99 \tObesidade I\nEntre 35 e 39,99 \tObesidade II (severa)\nAcima de 40 \tObesidade III (morbida)\n\n\n"); /* Tomei a liberdade de colocar as chaves nos if/elses, melhora a legibilidade. */ if (v_imc < 17) { printf("\n\nVoce esta muito abaixo do peso, contate um profissional de nutricao.\n\n"); } else if ((v_imc > 17 ) || (v_imc < 18.49)) { printf("\n\nVoce esta abaixo do peso ideal, contate um profissional de nutricao.\n\n"); } else if ((v_imc > 18.5) || (v_imc < 24.99)) { printf("\n\nVoce esta no peso normal para sua altura.\n\n"); } else if ((v_imc > 25) || (v_imc < 29.99)) { printf("\n\nVoce esta acima do peso, contate um profissional de nutricao.\n\n"); } else { printf("\n\nVoce esta muito acima do peso, contate um profissional de nutricao.\n\n"); } system("pause"); return 0; /* Execução bem sucedida. Retornando 0 para a função main() */ } Espero ter ajudado
  22. Boa tarde pessoal! Não sou muito novo na programação em C/C++, por isso conheço "bastantinho" (na verdade não conheço quase nada xD) da linguagem, o bastante para tentar me aventurar com exercícios um pouco complexos. Meu problema é o que segue, por favor, só quero uma luz! Estou tentando fazer um programa simples, que administra as notas escolares. Ele lê o nome da matéria, as notas que o aluno tirou e uma pequena observação. Exemplo: ================================================================= > Português. > 52 > 60 > 15 > To muito ferrado nessa bagaça ;-; ================================================================= Depois escreve em um arquivo, para ser carregado junto com as outras matérias que o aluno entrou, com a possibilidade de que ele possa mudar os dados delas mais tarde. A questão aqui é: como eu poderia escrever esses dados em um arquivo? Coloca-los numa estrutura e escrever num binário? Ou fazer um parser que lê os dados de um arquivo de texto? E se for fazer um parser, qual seria a melhor forma para lê-lo? Como disse, só preciso de um norte, então, se quiser apenas me passar artigos ou apostilas eu ficarei muito grato desde já, muito obrigado! Atenciosamente, Gabriel Grechuk.
  23. @Gustavo Andretto Muito obrigado!!! Isso é justamente isso que eu precisava!!! Acho que preciso estudar mais a API, principalmente as funções que exercem ação sobre os controles da janela (botão, label, etc) :v
  24. Boa noite a todos! Como de costume, aqui estou eu buscando informações sobre a win32 API :v Desta vez, estou tentando centralizar um botão na janela, todas as vezes em que seja enviada a mensagem WM_PAINT. Andei procurando na "gringa", mas não encontrei nada muito útil. Por favor, algum de vocês poderia me ajudar com isto ou passar algum link... ficarei muito grato!

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!