sábado, 16 de dezembro de 2023

instalar o Report Viewer no Visual Studio

 Para instalar o Report Viewer no Visual Studio 2019, siga os seguintes passos:

  1. Abra o Visual Studio 2019 e crie um projeto simples utilizando a plataforma Windows Forms.
  2. No menu superior, localize o item “Extensões/Gerenciar Extensões”.
  3. Clique na Aba “Online” e na caixa de pesquisa digite “rdlc”.
  4. Clique no primeiro item da pesquisa, que será o “Microsoft RDLC Report Designer”.
  5. Clique no botão “Download”.
  6. As alterações serão agendadas e começarão quando o Visual Studio for reiniciado.
  7. Para conferir se tudo ocorreu bem, clique com o botão direito sobre o projeto escolhendo “Adicionar/Novo Item …”. Na caixa pesquisar procure por “Relatório”, então iremos nos deparar com o item com extensão “.rdlc”.
  8. Para instalar as referências, acesse o item de menu “Ferramentas/Gerenciador de Pacotes do Nuget/Gerenciar pacotes do Nuget para a Solução…” e na caixa de pesquisa insira “reportviewercontrol”.
  9. Escolha a segunda opção “Microsoft.ReportingServices.ReportViewerControl.Winforms” e clique no botão “Instalar”.
  10. Ao término da instalação, será aberta uma tela contendo alguns informativos de como utilizar estas referências.

Espero ter ajudado! 😊

sexta-feira, 15 de dezembro de 2023

ASP.NET Core - Definir cultura para o formato brasileiro

 using System;

using System.Collections.Generic;

using System.Globalization;

using System.Linq;

using System.Threading.Tasks;

using System.Windows.Forms;


namespace Reports_Design

{

    internal static class Program

    {

        /// <summary>

        /// Ponto de entrada principal para o aplicativo.

        /// </summary>

        [STAThread]

        static void Main()

        {

            // Define a cultura padrão como "pt-BR"

            CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("pt-BR");


            Application.EnableVisualStyles();

            Application.SetCompatibleTextRenderingDefault(false);

            Application.Run(new Form1());

        }

    }

}


terça-feira, 17 de outubro de 2023

Corrigir o erro: InvalidOperationException: Unable to resolve service for type 'Microsoft.AspNetCore.Identity.RoleManager`1[Microsoft.AspNetCore.Identity.IdentityRole]' while attempting to activate

 builder.Services.AddDefaultIdentity<IdentityUser>(options => options.SignIn.RequireConfirmedAccount = true)

    .AddRoles<IdentityRole>() // Corrigir o erro: InvalidOperationException: Unable to resolve service for type 'Microsoft.AspNetCore.Identity.RoleManager`1[Microsoft.AspNetCore.Identity.IdentityRole]' while attempting to activate. Adicione esta linha

    .AddEntityFrameworkStores<ApplicationDbContext>();

quarta-feira, 23 de agosto de 2023

Vírus de smartphones

De acordo com um artigo da TyC Sports, o “malware Trojan” é um dos vírus mais recentes a se disfarçar de aplicativo. Esse malware inclui qualquer código, programa ou vírus incorporado no software de aplicativo para se assemelhar a uma parte segura da plataforma para invadir dispositivos e obter dados pessoais.

A empresa de segurança cibernética Kaspersky explica que o vírus “Fleckpe” é um tipo específico de malware tipo “cavalo de tróia”. Como resultado de sua natureza enganosa, esse golpe comprometeu 620.000 dispositivos móveis por meio de aplicativos. A Kaspersky define esse tipo de vírus como parte dos “Trojans de assinatura” que infectam smartphones agindo como uma assinatura de serviços de aplicativos específicos.

Assim que um usuário baixa o aplicativo e concede acesso aos seus dados pessoais, esses vírus invadem o dispositivo. O malware verifica as informações do usuário, como galerias de fotos, notificações e detalhes de localização, até detectar informações que permitem pagamentos online. A TyC Sports confirma que este vírus foi descoberto em 6 aplicativos relacionados à edição e design de fotos: Gif Camera Editor Pro, Night Cam Rea Pro, Microclip Video Editor, Photo Editor Toolbox, H4KS Wallpaper e Beauty Camera Plus Photo Editor.

Com isso em mente, medidas proativas de segurança cibernética são essenciais para proteger os dados pessoais dos usuários. A proteção mais direta contra golpes cibernéticos é baixar antimalware em smartphones. A instalação das atualizações mais recentes do sistema operacional é outro método para fortalecer a segurança dos dados pessoais. Os usuários também devem evitar se conectar a Wi-Fi público, pois a Verizon recomenda o uso de pontos de acesso móveis pessoais. Isso também se aplica a terminais de carregamento públicos que podem ser programados para hackear dispositivos móveis. Como o malware tem como alvo aplicativos específicos, os usuários devem sempre instalar aplicativos de lojas oficiais e revisar todas as políticas de privacidade.



TIPO DE DADOS - FLOAT X DOUBLE

  1. Tipos Reais (ou tipos de ponto flutuante) representam valores com um parte fracionária

  2. Tipo

    Tamanho em bytes

    Valor Positivo Mínimo

    Valor Máximo

    C++ Análogo

    float

    4

    1.175494351e-38

    3.402823466e+38

    float

    double

    8

    2.2250738585072014e-308

    1.7976931348623158e+308

    double


  3. A diferença entre o float e o double é a precisão, ou seja, o quanto varia, o quanto consegue expressar um valor próximo do real, é o número de casas decimais que ele consegue suportar.

    Esses tipos são chamados de ponto flutuante binários.


    1. O float normalmente possui 32 bits para representar o expoente e a mantissa, além do sinal. Dá pra representar muitos números, mas por sua natureza binária não consegue representar todos os números, então ele representa o que está mais próximo do que se deseja. Ele tem 24 dígitos de precisão e por isso é chamado de simples precisão.

    Tipo de número real float ocupa 32 bits (1 bit de sinal, 8 bits de expoente e 23 bits de mantissa).


    2. O double geralmente é representado por 64 bits, então consegue bem mais precisão, mas ainda não a exatidão já que a forma de representação também é binária. Tem 53 dígitos de precisão e é chamado de dupla precisão.

    Tipo de número real double ocupa 64 bits (1 bit de sinal, 11 bits de expoente e 52 bits de mantissa).