sábado, 26 de outubro de 2019
Configurar ODBC 32 bits no Windows 10 64bits
Configurar DSN 32 bits no Windows 10 64bits:
1. Abrir e menu executar ou pressionar no seu teclado a teclas Windows+R e digitar:
1. Abrir e menu executar ou pressionar no seu teclado a teclas Windows+R e digitar:
%windir%\SysWOW64\odbcad32.exe
2. Agora é só realizar as configurações necessárias e teste
Dessa forma, quando o seu aplicativo for utilizar a conexão com fonte 32bits, a conexão será carregada automaticamente a partir do DSN configurado no Odbcad32.exe localizado na pasta %systemdrive%\Windows\ SysWoW64.

Instalar Windows 10 no DELL OptiPlex 3070
Depois de diversos testes, na tentativa de instalar o Windows 10 no OptiPlex 3070, só tivemos sucesso quaando fizemos a troca do esquema de partição, utilizado no pendrive, de MBR para GPT.
Só tivemos sucesso na instalação do Windows 10, depois de criarmos um pendrive utilizando o equema de partição GPT e cópiar os arquivos de instalação do Windows para o pendrive. Só assim, o SO proseguio com a instalação normalmente.
Se você estiver com alguma dificuldate para realizar a instalação do Windows 10 no computador, modelo DELL OptiPlex 3070, basta seguir o passo a passo no vídeo abaixo, para resolver o seu problema:
Comandos utilizado no vídeo acima:
1. Peparar o pendrive com o tipo de particionamento GPT
Comandos utilizado no vídeo acima:
DISKPART
LIS DIS
SEL DIS X //O X REPRESENTA O NÚMERO DO SEU PENDRIVE
CLE
CON GPT
CRE PAR PRI
FOR FS=NTFS QUICK
ASS
EXIT
Vide como fazer a cópia via robocopy:
D:\ = É letra do seu pendrive/
/E = Para copiar os subdiretórios, incluindo os vazios
/R:0 = Caso tenha falha na cópia, não tenta copiar novamente
/W:0 = Não fica aguardando para repedir a cópia, já que foi desativado no /R:0
/V = Vai mostrar o caminho dos arquivos que não foram copiados
/LOG:log_da_copia.log = Serve para gerar um arquivo de log do que foi cópiado
Se tiver algum erro durante á cópia, será listado no arquivo de log;Se o processo da cópia for interompido ou tiver alguma falha durante o processo, basta repetir o comando novamente, ele só vai copiar só o que estiver faltando no pendrive
Se ainda assim, voçê não estiver conseguindo inicializar pelo pendrive, verifique no setup se as configurações estão correta.
LIS DIS
SEL DIS X //O X REPRESENTA O NÚMERO DO SEU PENDRIVE
CLE
CON GPT
CRE PAR PRI
FOR FS=NTFS QUICK
ASS
EXIT
2. Cópiar os arquivos de instalação do Windows para o pendrive
Quando for fazer a cópia, recomendamos usar o robocopy. Porque ele é mais rápido e seguro.Vide como fazer a cópia via robocopy:
robocopy E:\ D:\ /E /R:0 /W:0 /LOG:log_da_copia.logE:\ = Ao caminho onde estão os arquivos de instalação do Windows
D:\ = É letra do seu pendrive/
/E = Para copiar os subdiretórios, incluindo os vazios
/R:0 = Caso tenha falha na cópia, não tenta copiar novamente
/W:0 = Não fica aguardando para repedir a cópia, já que foi desativado no /R:0
/V = Vai mostrar o caminho dos arquivos que não foram copiados
/LOG:log_da_copia.log = Serve para gerar um arquivo de log do que foi cópiado
Se tiver algum erro durante á cópia, será listado no arquivo de log;Se o processo da cópia for interompido ou tiver alguma falha durante o processo, basta repetir o comando novamente, ele só vai copiar só o que estiver faltando no pendrive
Se ainda assim, voçê não estiver conseguindo inicializar pelo pendrive, verifique no setup se as configurações estão correta.
Vide imagem de exemplo:

quarta-feira, 4 de setembro de 2019
Recuperar mensagens apagadas no WhatsApp Web
Descubra como ler as mensagens que foram enviadas para você e apagadas logo em seguida
Uma forma simples de fazer isso no WhatsApp Web, é ativando o complemento WA WEB Plus. Ele permite não só restaurar uma mensagem deletada, como uma série de personalizações que vai lhe trazer mais privacidade e conforto na utilização do WhatsApp Web.
Vide algumas das vantagens:
Recursos de Privacidade:
- Restaurar mensagens excluídas.
- Borrar mensagens recentes;
- Borrar nomes de contatos;
- Borrar fotos de contatos;
- Borrar mensagens das conversas;
- Personalizações:
- Enviar o emoji de "like" com apenas um clique;
- Exibir o status do contato ao lado do seu nome;
- Destacar contatos on-line;
- Manter a barra de informações do contato aberta;
- Iniciar conversa com qualquer número que não esteja na sua lista de contatos;
- Imagens de papel de parede personalizadas;
- Modo noturno completamente customizável.
Exportar:
- Exportar uma lista de todos os contatos;
- Exportar apenas contas pessoais;
- Exportar apenas contas Business;
- Exportar apenas contatos de telefone;
- Exportar apenas contatos que não são de telefone;
- Exportar apenas grupos;
- Exportar contatos de um grupo específico;
- Exportar contatos com um marcador específico;
- Exportar contatos de um país específico;
- E mais...
Automação:
Ativar o WA Web Plus
- Você pode automatizar o envio de mensagens (como convites especiais e mensagens sobre eventos...).

segunda-feira, 26 de agosto de 2019
Como aumentar o tamanho dos ícones da área de trabalho do Windows
Para alterar o tamanho dos ícones, basta clicar com o botão direito do mouse na área de trabalho e selecionar: Ícones grandes, Ícones médios ou Ícones pequenos. O problema aqui, é que só tem disponível esses três tamanhos.
E aí? O que fazer para criar um tamanho personalizado?
Você pode aumentar o tamanho dos ícones da área de trabalho com um atalho rápido utilizando o mouse e o seu teclado 🙂
Para isso, basta posicionar o cursor do mouse em qualquer parte da área de trabalho e manter pressionado a tecla Ctrl no teclado e rolar a roda do mouse para cima ou para baixo e escolher os mais de 27 tamanhos disponíveis 😉

quinta-feira, 15 de agosto de 2019
terça-feira, 16 de julho de 2019
Solução para o erro: instant_run_split_apk_resources\debug\instantRunSplitApkResourcesDebug\out\slice_0\resources_ap ( Solution )
Se você estiver tentando executar seu app no Android Studio e receber o erro: "instant_run_split_apk_resources\debug\instantRunSplitApkResourcesDebug\out\slice_0\resources_ap"
Esse tipo de erro pode ser causado pelo recurso Instant run no Android Studio. Para resolver esse problema, basta desativá-lo seguindo os passos abaixo:
1. Clicar em File, Settings...;
2. Navegar para Build, Execution, Deployment e selecionar Instant Run
3. Desmarcar a caixa Enable Instant Run to hot swap code/resource...
Mais informações Aqui:
By
Ricardo Oliveira
às
julho 16, 2019
Nenhum comentário:
Esse tipo de erro pode ser causado pelo recurso Instant run no Android Studio. Para resolver esse problema, basta desativá-lo seguindo os passos abaixo:
1. Clicar em File, Settings...;
2. Navegar para Build, Execution, Deployment e selecionar Instant Run
3. Desmarcar a caixa Enable Instant Run to hot swap code/resource...
Mais informações Aqui:

sexta-feira, 12 de julho de 2019
App As Leis - Legislação Brasileira
Leis para concursos e autoconhecimento da legislação Brasileira. O aplicativo As Leis, acessa todo o conteúdo direto do Portal da Legislação da Presidência da República. As leis são organizadas para facilitar sua leitura e intendimento.
Na lista abaixo, você vai conferir uma prévia do App As Leis
LEGISLAÇÃO FEDERAL
- Constituição Federal
- Códigos:
- Estatutos
- Decretos
- Decretos-Leis
- Decretos do Poder Legislativo
- PEC - Propostas de Emenda à Constituição
- Projetos de lei
CÓDIGOS
- Código Civil - LEI No 10.406
- Código de Processo Civil - LEI No 5.869
- Código de Processo Civil - LEI Nº 13.105
- Código Penal - DECRETO-LEI No 2.848
- Código de Processo Penal - DECRETO-LEI Nº 3.689
- Código Tributário Nacional - LEI Nº 5.172
- Consolidação das Leis do Trabalho - DECRETO-LEI Nº 5.452
- Código de Defesa do Consumidor - LEI Nº 8.078
- Código de Trânsito Brasileiro - LEI Nº 9.503
- Código Eleitoral - LEI Nº 4.737
- Código Florestal - LEI Nº 12.651
- Código de Águas - DECRETO Nº 24.643
- Código de Minas - DECRETO-LEI Nº 227
- Código Penal Militar - DECRETO-LEI Nº 1.001
- Código de Processo Penal Militar - DECRETO-LEI Nº 1.002
- Código Brasileiro de Aeronáutica - LEI Nº 7.565
- Código Brasileiro de Telecomunicações - LEI Nº 4.117
- Código Comercial - LEI Nº 556
- Estatuto da Advocacia e da Ordem dos Advogados do Brasil - LEI Nº 8.906
- Estatuto da Criança e do Adolescente - LEI Nº 8.069
- Estatuto da Cidade - LEI No 10.257
- Estatuto de Defesa do Torcedor - LEI No 10.671
- Estatuto do Desarmamento - LEI No 10.826
- Estatuto do Estrangeiro - LEI Nº 13.445
- Estatuto do Idoso - LEI No 10.741
- Estatuto da Igualdade Racial - LEI Nº 12.288
- Estatuto do Índio - LEI Nº 6.001
- Estatuto da Juventude - LEI Nº 12.852
- Estatuto dos Militares - LEI Nº 6.880
- Estatuto dos Museus - LEI Nº 11.904
- Estatuto Nacional da Microempresa e da Empresa de Pequeno Porte - LEI COMPLEMENTAR Nº 123
- Estatuto da Pessoa com Deficiência - LEI Nº 13.146
- Estatuto dos Refugiados - LEI Nº 9.474
- Estatuto da Terra - LEI Nº 4.504

ERROR: Manifest merger failed: Attribute application
Solução para os erros abaixo:
Ao configurar um bloco de anúncio do AdMob, você pode receber as mensagens de erros abaixo, quando for adicionar a dependência "implementation 'com.google.android.gms:play-services-ads:18.1.0'" no arquivo build.gradle:
"ERROR: Manifest merger failed: Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91 is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:8:5-41:19 to override."
"Dependencies using groupId com.android.support and androidx.* can not be combined but found IdeMavenCoordinates{myGroupId='com.android.support', myArtifactId='support-vector-drawable', myVersion='28.0.0', myPacking='aar', myClassifier='null'} and IdeMavenCoordinates{myGroupId='androidx.core', myArtifactId='core', myVersion='1.0.0', myPacking='aar', myClassifier='null'} incompatible dependencies less... (Ctrl+F1)
Inspection info:There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion). Issue id: GradleCompatible"
Esses erros podem ocorrer porque a dependência que você estar configurando no seu projeto faz parte do novo pacote do AndroidX, por esse motivo você pode receber diversos erros no seu projeto.
Para solucionar todos os problemas, você vai precisar fazer a migração do seu projeto. Vide no vídeo a seguir como realizar esse processo ou acesse o link para acessar a página do Developers do Google.
Ao configurar um bloco de anúncio do AdMob, você pode receber as mensagens de erros abaixo, quando for adicionar a dependência "implementation 'com.google.android.gms:play-services-ads:18.1.0'" no arquivo build.gradle:
"ERROR: Manifest merger failed: Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91 is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:8:5-41:19 to override."
"Dependencies using groupId com.android.support and androidx.* can not be combined but found IdeMavenCoordinates{myGroupId='com.android.support', myArtifactId='support-vector-drawable', myVersion='28.0.0', myPacking='aar', myClassifier='null'} and IdeMavenCoordinates{myGroupId='androidx.core', myArtifactId='core', myVersion='1.0.0', myPacking='aar', myClassifier='null'} incompatible dependencies less... (Ctrl+F1)
Inspection info:There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion). Issue id: GradleCompatible"
Esses erros podem ocorrer porque a dependência que você estar configurando no seu projeto faz parte do novo pacote do AndroidX, por esse motivo você pode receber diversos erros no seu projeto.
Para solucionar todos os problemas, você vai precisar fazer a migração do seu projeto. Vide no vídeo a seguir como realizar esse processo ou acesse o link para acessar a página do Developers do Google.
Solução
Mais detalhes em Android Dev

segunda-feira, 6 de maio de 2019
Microsoft vai lançar o Windows Terminal - Um novo aplicativo de linha de comando para o Windows
A Microsoft vai lançar um novo aplicativo de linha de comando para o Windows, apelidado de Windows Terminal. Ele foi projetado para ser o local central para acesso a ambientes como o PowerShell, o Cmd e o Windows Subsystem for Linux (WSL). A Microsoft está adicionando suporte a várias guias juntamente com temas e personalização para desenvolvedores que desejam ajustar o aplicativo Terminal.
O Windows Terminal também suportará renderização de texto emoji e baseado em GPU. A Microsoft revelou o novo aplicativo do Windows Terminal durante a conferência de desenvolvedores Build da empresa hoje. A gigante do software está planejando disponibilizá-lo em meados de junho e marca os últimos esforços da Microsoft para melhorar o ambiente de desenvolvimento no Windows 10.
Fonte: theverge.com

quarta-feira, 27 de março de 2019
Fatal error: Uncaught Exception: FPDF error: Some data has already been output, can't send PDF file in..
Se você estiver usando a lib fpdf para gerar arquivos PDF e receber a mensagem de erro abaixo:
"Fatal error: Uncaught Exception: FPDF error: Some data has already been output, can't send PDF file in{...}"
Prossiga da seguinte forma para resolver o seu problema:
No arquivo gerado do pdf, procure pela linha $pdf->Output(); e em seguida adicionar o comando ob_start ();
O comando acima, vai iniciar o buffer e fazer com que o arquivo que foi gerado seja enviado para o seu browser.
A função do ob_start() é inicia o buffer e para limpar o buffer é o comando é ob_clean() e ob_end_clean(). O ob_end_clean() limpa o buffer e ainda exibe aquilo que foi armazenado nele.
By
Ricardo Oliveira
às
março 27, 2019
Um comentário:
"Fatal error: Uncaught Exception: FPDF error: Some data has already been output, can't send PDF file in{...}"
Prossiga da seguinte forma para resolver o seu problema:
No arquivo gerado do pdf, procure pela linha $pdf->Output(); e em seguida adicionar o comando ob_start ();
O comando acima, vai iniciar o buffer e fazer com que o arquivo que foi gerado seja enviado para o seu browser.
A função do ob_start() é inicia o buffer e para limpar o buffer é o comando é ob_clean() e ob_end_clean(). O ob_end_clean() limpa o buffer e ainda exibe aquilo que foi armazenado nele.

domingo, 17 de março de 2019
Execute o Windows 95 no Linux-Ubuntu
Aprenda o passo a passo para executar o Windows 95 no linux:
1. Faça o download da versão mais recente do windows95 para o Ubuntu:
Está disponível em formato zip, rpm e deb para diversos sistemas operacionais.
Vide mais detalhes aqui.
2. Depois que você tiver o download do arquivo, você pode instalá-lo usando o seguinte comando:
sudo apt install gdebi
sudo gdebi windows95_1.1.0_amd64.deb3. Para executar basta digitar no terminal o comando abaixo:
windows95
Vídeo com o passo a passo:
Mais detalhes sobre o projeto windows95 no github:

O arquivo de configuração padrão do nginx - default
/etc/nginx/sites-available/default
##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
#
# Generally, you will want to move this file somewhere, and start with a clean
# file but keep this around for reference. Or just disable in sites-enabled.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;
# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
# proxy_pass http://localhost:8080;
# proxy_http_version 1.1;
# proxy_set_header Upgrade $http_upgrade;
# proxy_set_header Connection 'upgrade';
# proxy_set_header Host $host;
# proxy_cache_bypass $http_upgrade;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# include snippets/fastcgi-php.conf;
#
# # With php7.0-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php7.0-fpm:
# fastcgi_pass unix:/run/php/php7.0-fpm.sock;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
#server {
# listen 80;
# listen [::]:80;
#
# server_name example.com;
#
# root /var/www/example.com;
# index index.html;
#
# location / {
# try_files $uri $uri/ =404;
# }
#}
By
Ricardo Oliveira
às
março 17, 2019
Nenhum comentário:
##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
#
# Generally, you will want to move this file somewhere, and start with a clean
# file but keep this around for reference. Or just disable in sites-enabled.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;
# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
# proxy_pass http://localhost:8080;
# proxy_http_version 1.1;
# proxy_set_header Upgrade $http_upgrade;
# proxy_set_header Connection 'upgrade';
# proxy_set_header Host $host;
# proxy_cache_bypass $http_upgrade;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# include snippets/fastcgi-php.conf;
#
# # With php7.0-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php7.0-fpm:
# fastcgi_pass unix:/run/php/php7.0-fpm.sock;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
#server {
# listen 80;
# listen [::]:80;
#
# server_name example.com;
#
# root /var/www/example.com;
# index index.html;
#
# location / {
# try_files $uri $uri/ =404;
# }
#}
