Tutoriais‎ > ‎

Windows

Para organizar, esta seção irá concentrar todos os tutoriais relacionado apenas à aplicações no Windows

Manipulando Volumes VHD no Windows 7+

postado em 3 de set de 2015 08:19 por Prof. Rodrigo Costa   [ 3 de set de 2015 08:45 atualizado‎(s)‎ ]

Muitas vezes, fazer um backup dos arquivos pessoais de um computador é muito demorado, pois a cópia de muitos arquivos pequenos é muito mais lento do que a cópia de um único arquivo do mesmo tamanho. 
Contudo, ficar montando os VHDs é enfadonho, bem como não é possível montar os arquivos em contas de usuários limitados.

Neste tutorial serão descritos como criar um arquivo vhd, como montá-lo e como montar automaticamente ao inicializar o sistema.

1. Criando VHD

  • Abre-se o gerenciador de disco (Windows + X > Gerenciador de Disco) ou (Iniciar > Executar >  diskmgmt.msc)
  • Ação > Criar VHD
  • Depois de criado, deve-se ativar o disco criado, clicando com o botão direito sobre ele e em seguida clicando em Inicializar disco.
  • Por fim, deve-se criar uma partição no arquivo VHD , clicando com o botão direito sobre a área em preto do disco criado e em seguida clicar em Novo Volume Simples. Nesta opção você deve escolher o formato do arquivo e avançar até concluir.
 
 

2. Manipulando o arquivo VHD

Montar o arquivo no Windows 8+ é bem simples, basta abrir o Windows Explorer e clicar duas vezes sobre o arquivo, mas esse recurso no Windows 7 esse recurso não está disponível. Contudo todas as versões do windows 7+ possuem o gerenciador em linha de comando, o diskpart. Que, também é bem simples.

Abre-se o gerenciador, clicando no menu iniciar > Executar e em seguida digitando: 
diskpart 

Dentro do diskpart deve-se escolher o disco virtual criado.
select vdisk file="<local do arquivo>"

Para montar o disco, deve-se em seguida de digitar o seguinte comando
attach vdisk

Para desmontar o disco, deve-se em seguida de digitar o seguinte comando
detach vdisk

Se você quiser mudar a letra da unidade deve-se digitar o seguinte comando
assign letter <nova_letra>
remove letter <letra_antiga>

O NTFS permite montar um disco dentro de uma pasta NTFS vazia, similarmente ao linux, para isso, cria-se inicialmente uma pasta em qualquer local do disco e dentro do diskpart digita-se o seguinte comando
assign mount=<caminho_da_pasta_vazia>
remove letter=<letra_antiga>

Importante: o VHD salva as configurações escolhidas pelo usuário, da próxima vez que você montar o disco, ele procura montá-lo da mesma forma que você configurou da última vez (ou seja, monta com a mesma letra que você montou anteriormente)

3. Montando o arquivo VHD automaticamente durante a inicialização

Primeiramente deve-se criar um arquivo mount.txt com o seguinte conteúdo:
select vdisk file="<local do arquivo>"
attach vdisk

Depois disso, deve-se criar um arquivo mount.bat com o seguinte conteúdo:
diskpart /s <Caminho_do_arquivo_mount.txt>

Esse script monta o disco virtual, depois disso, deve-se abrir o agendador de tarefas (Iniciar > Executar > taskschd.msc) e em seguida clicar na biblioteca do agendador e em seguida na região central da biblioteca, deve-se cilcar com o botão direito e em seguida em nova tarefa

Na guia geral, deve-se preencher as informações básicas e os privilégios da tarefa. O usuário system foi escolhido para permitir com que a montagem esteja disponível para qualquer usuário

Depois disso, vai-se em disparadores e cria-se um novo disparador baseado na inicialização do sistema

Por fim, clica-se em ações e depois insere-se as informações do arquivo mount.bat criado.


Depois disso é só clicar OK e a tarefa está agendada. Na próxima vez que o sistema for inicializado, o arquivo vhd será montado automaticamente.


Wireless no Windows Server 2008

postado em 22 de jun de 2013 17:07 por Prof. Rodrigo Costa

Por padrão, o windows server 2008 vem com os serviços de wireless desligados. 

Para funcionar a descoberta wifi e conexão, basta adicionar a FEATURE WIRELESS-LAN-SERVICE  através do comando
servermanagercmd -install Wireless-Networking -resultPath installResult.xml

O comando faz a adição dos recursos de Wireless Lan Service, similar a ir na interface gráfica e clicar em INICIAR > SERVER ROLES > ADD FEATURES e marcar  Wireless Lan Service , conforme visto na figura a seguir
instalando wlan

outras ferramentas são bastante úteis no windows server 2008 como o cliente telnet, o powershell e o Hyper-v, por isso após este comando fiz o seguinte
servermanagercmd -install Hyper-v RSAT-Hyper-V Telnet-Client PowerShell -resultPath installResult.xml 

Para mais funcionalidades, basta dar o comando -query 
servermanagercmd -query | more 

Scripts Avançados no Windows

postado em 24 de mai de 2013 20:51 por Prof. Rodrigo Costa   [ 24 de mai de 2013 21:43 atualizado‎(s)‎ ]

Um shell script é um pequeno programa que armazena uma sequencia de ações realizadas através da interface de linha de comando de um sistema. 

Neste post, irei falar sobre um tipo de shell script que permite a utilização de recursos avançados do sistema, mas para podermos entender melhor do que se trata, dividi o post em duas seções. Na primeira descrevo o conceito dos shell  scripts e na segunda vou falar e mostrar um exemplo de uso desse script avançado.
 

1. Shell Script

No linux, qualquer arquivo de texto com permissão de execução pode conter um script e ser executado através do terminal. No windows, além dos executáveis, apenas os arquivos de lotes, em que são armazenados sequencias de comandos do interpretador, tem permissão de serem executados. Desde o DOS, conhece-se os arquivos de extensão .bat como arquivos de lote, mas os arquivos com extensão .cmd também são arquivos de lote a partir do windows NT.

Em qualquer um destes, pode-se criar pequenos programas estruturados que utilizam construtores para instruções de repetição, seleção, desvio condicional e incondicional, entrada e saída de dados.

Na tabela a seguir são mostradas as principais instruções e estruturas disponíveis no windows e no Linux
 Instrução  Windows Linux 
 Declaração + inicialização de Variável  SET NOME_VARIAVEL=VALOR  export NOME_VARIAVEL=VALOR
 Entrada de Dados    SET /P NOME_VARIAVEL=  read NOME_VARIAVEL
 Referência a variável %NOME_VARIAVEL%   $NOME_VARIAVEL
 Saída de Dados ECHO TEXTO
ECHO %VARIAVEL%
ECHO TEXTO e VALOR=%VARIAVEL% 
echo "Algum Texto"
echo $NOME_VARIAVEL
 Desvio Condicional   IF %VARIAVEL% ==VALOR
(
    SEQUENCIA DE COMANDOS
)
ELSE
(
    SEQUENCIA DE COMANDOS
)

 if condicao
    SEQUENCIA DE COMANDOS
else
    SEQUENCIA DE COMANDOS
fi
 Repetição  for /R %v IN (*.ini) DO echo %v 
imprime o nome de todos os arquivos .ini dentro do diretório corrente e de todos os sub-diretorios.
selection =
until [ "$selection" = "0" ]; do
    read selection
done


Bem, falei até o momento sobre o básico do shell script, mas este tópico tem como objetivo falar sobre um recurso avançado do windows chamado Windows Scripting Host.

2. Windows Scripting Host (WSH)

Permite acesso a recursos privilegiados dos recursos do Windows desde sua versão 98. O mesmo é muito usado para criar scripts para serem realizados durante o login do sistema. Mas, através do WSH pode-se dar privilégio de administrador à ao prompt de comando ou realizar funções avançadas do sistema como ejetar a bandeja do cd-rom do computador.

Um diferencial do WSH para os arquivos de lote é a sintaxe de comando utilizada. Os arquivos de lote, como todo shell script, tem sintaxe de texto definidas pelo interpretador de comando. Os WSH são mais interessantes pois permitem a utilização de diversas linguagens como o PHP, PERL, BASIC, VB, PYTHON, JAVASCRIPT. Isto com certeza facilita o desenvolvimento deste tipo de script.

É simples criar scripts WSH, basta realizar os seguintes comandos
  1. criar um arquivo .vbs (caso vc queira usar o VB) ou .js (para usar JAVASCRIPT) contendo um script desejado
  2. chamar o comando csscript.
Por exemplo, o seguinte script ejeta os cdroms da máquina.
Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
if colCDROMs.Count >= 1 then
    For i = 0 to colCDROMs.Count - 1
        colCDROMs.Item(i).Eject
        Next ' cdrom
End If

Porque você não tenta fazer o seu?

2.1. Procurando mais transparência

Uma limitação do uso direto de um .vbs é que o mesmo pode ser usado como forma de transferencia de virus. Isto faz com que qualquer anti-virus entenda os arquivos .vbs como potenciais ameaças.

Para deixar algo mais transparente para o usuário pode-se criar um arquivo de lote (.bat) que cria um .vbs temporário e depois o executa. Seria algo assim:

@ECHO OFF
ECHO Set oWMP = CreateObject("WMPlayer.OCX.7" ) > %TEMP%\cd.vbs
ECHO Set colCDROMs = oWMP.cdromCollection >> %TEMP%\cd.vbs
ECHO if colCDROMs.Count >= 1 then >> %TEMP%\cd.vbs
ECHO     For i = 0 to colCDROMs.Count - 1 >> %TEMP%\cd.vbs
ECHO         colCDROMs.Item(i).Eject >> %TEMP%\cd.vbs
ECHO         Next ' cdrom >> %TEMP%\cd.vbs
ECHO End If >> %TEMP%\cd.vbs
cscript %TEMP%\cd.vbs

Desta forma, o anti-virus acaba não bloqueando seu script.

Essa foi a forma realizada na outra postagem : https://sites.google.com/site/rodccosta/tutoriais/windows/sudo-windows

Compartilhamento de Impressoras no Windows 8

postado em 1 de mai de 2013 11:33 por Prof. Rodrigo Costa

Foi um pouco esquisito, fui à UFC e tinhamos um problema com uma impressora compartilhada.

Em uma máquina com Windows 8 havia uma impressora compartilhada. Os outros usuários acessavam a máquina através de seu IP \\XXX.YYY.ZZZ.WWW e configuravam a impressora normalmente. Similar ao mostrado na Figura abaixo:

Mas quando tentavamos fazer o mesmo procedimento usando o nome da máquina não dava certo. Creio que o problema acabou sendo por causa do Windows Server 2008 que distribui o DHCP e adiciona o sufixo do Active Directory nas estações.

Toda vida que clicava em cima da impressora e colocava em conectar resultava no erro 0x00000709
error 0x00000709


Então a solução seria acessar por IP, mas a máquina tinha IP dinâmico. O lease time da rede estava em torno de uma semana então tudo funcionou por um bom tempo. Mas como se sabe, se a máquina passar mais tempo que o lease time do DHCP, o IP é liberado e quando  a máquina entrar na rede vai ter um novo IP, necessitando a mudança do IP em todas as máquinas ou a configuração do IP estático.

Uma solução foi criar uma reserva de um IP no DHCP 
Isso já resolveria pq sempre que a máquina entrasse na rede, teria sempre o mesmo IP. Mas o melhor mesmo seria acessar ela pelo nome.

Para funcionar, bastava entrar num CMD com privilégios de administrador e dar o comando
reg add HKLM\SYSTEM\CurrentControlSet\Control\Print /v DnsOnWire /t REG_DWORD /d 1

Depois disso criei no DNS uma entrada do tipo A com o nome impressora.dominio.com apontando pro ip da máquina que tinha a impressora.

Funcionou que é uma beleza.!

Problema é que ela reduz um pouco o desempenho do compartilhamento de impressão,


Winedt 6.0

postado em 11 de mar de 2012 05:50 por Prof. Rodrigo Costa   [ 23 de abr de 2012 05:13 atualizado‎(s)‎ ]

Neste Post iremos descrever a configuração básica de um dos mais conhecidos editores Latex.
   
Se essse tutorial funcionou clique em curtir




O Latex é um sistema de editoração eletrônica que permite preparar documentos com alta definição gráfica. Este sistema é a ferramenta mais utilizada para produzir textos técnicos ou científicos, mas podem ser utilizados para qualquer forma de publicação.

Para escrever  no Latex é necessário dois programas: um compilador e um editor. 

Compilador:

  • É um sistema TeX para o Windows. 
  • É gratuito e pode ser obtido com facilidade
  • Recomenda-se instalar o compilador antes do editor.
No caso do windows, o editor e compilador

Editor:

  • com ele cria-se o .tex e ele nos auxilia a gerar os diferentes arquivos de saída
  • Existem alguns gratuitos ou shareware por 30 dias e depois disso, algumas vezes durante a edição aparece uma janela pedindo para que seja comprado.

  • No caso do Miktex, existem duas opções de download:
    • Basic MiKTeX 2.9 Installer: instala apenas o extremamentenecessário do sistema TeX, contudo, pode-se instalar posteriormente os componentes necessários posteriormente;
    • MiKTeX 2.9 Net Installer: baixa todos os pacotes do MiKTeX para depois instalar o sistema por completo.
    Eu prefiro a primeira opção, pois como temos internet disponível, não preciso baixar tudo e baixo só por demanda. 
    O complicado é a configuração do editor. No caso, para uma configuração efetiva do editor deve-se seguir os seguintes passos:
    1. Primeiramente, baixamos um dicionário para o editor ir procurando pelo menos corrigir os erros de ortografia. Gramática é pedir demais!
      No caso, vamos baixar o português do Brasil: http://www.winedt.org/Dict/portuguese.zip
    2. Depois disto, basta configurar o Winedt, primeiramente configura-se o dicionário:
      Abrir a janela de opções
       Menu Options> Options Interface
       Vá em DictionaryManager e clique em wordlist
      O editor abre um arquivo de texto e você deve inserir essa sequência de comandos 


      Ao fim da edição, salve o arquivo e clique no botão Ao fim da edição, salve o arquivo e clique no botão  Load Current Script
       

    3. Para simplificar a inserção de acentos, configura-se as traduções ao abrir e ao gravar os arquivos no WinEDT
     Vá em Language, Unicode, Sortinge Vá em Translation Tables
    Ao abrir o arquivo, modifique as seguintes opções 
    • TeX_Read e coloque : ENABLED=1
    • TeX_Write e coloque ENABLED=1 
    • BibTeX_Read e coloque ENABLED=1 
    • BibTeX_Write e coloque ENABLED=1
     Ao fim da edição, salve o arquivo e clique no botão Ao fim da edição, salve o arquivo e clique no botão  Load Current Script
     

    X-Windows + Putty

    postado em 7 de mar de 2012 09:29 por Prof. Rodrigo Costa   [ 23 de abr de 2012 05:13 atualizado‎(s)‎ ]


    Olá,
    Vocês sabem que o SSH não só utiliza o prompt de comando. É possível chamar interfaces gráficas mesmo se conectando remotamente. Uma coisa interessante de se fazer seria adquirir os quadros em uma máquina Linux e visualizar os quadros adquiridos ou processados em outra máquina.

    No linux é muito fácil, basta se conectar via SSH usando a opção -x
    ssh -x [email protected]

    este comando direciona os comandos gráficos para o x-windows rodando na sua própria máquina.

    No windows, não existe nenhum servidor x-windows. Mas basta instalar, o download está disponível em http://sourceforge.net/projects/xming/
    Após instalar, executa-se o xming e basta abrir o putty e solicitar a utilização do x-server, conforme mostrado a seguir:


    Por exemplo qualquer instalador que necessite de uma interface gráfica, basta subir o startx no servidor e depois abrir o putty usando essas configurações. Assim, consegui instalar o truecrypt, abrir o gnumeric ou até janelas específicas do lxde, conforme mostrado a seguir.

     
     

    Até mesmo uma interface gráfica inteira dá para ser levantada. Abri o putty, depois dei o comando /usr/bin/lxsession -s Lubuntu -e LXDE.


    Eu por exemplo, fiz um programinha só para abrir os quadros da Webcam e exibir


    No caso, a única inconveniência é a velocidade, os quadros chegam bem lentos e estão um pouco atrasádos, mas é uma solução.



    Sudo-Windows

    postado em 28 de fev de 2012 10:14 por Prof. Rodrigo Costa   [ 23 de abr de 2012 05:13 atualizado‎(s)‎ ]

    No Windows 7 e Vista, as vezes, é interessante abrirmos algum programa em modo super usuário. O chato é termos que clicar com o botão direito no mesmo para inciá-lo como administrador ou apertar o CTRL + SHIFT e clicar em um atalho. 

    Para fazer isto de forma mais simples, podemos criar um arquivo .bat ou .cmd que ao ser chamado, roda um aplicativo em modo privilegiado. Por exemplo:
    sudo explorer
    1. Para fazer isto, inicie o bloco de notas (notepad.exe) ou outro editor de sua preferência e cole o seguinte texto:
      @echo Set objShell = CreateObject("Shell.Application") > %temp%\sudo.tmp.vbs
      @echo args = Right("%*", (Len("%*") - Len("%1"))) >> %temp%\sudo.tmp.vbs
      @echo objShell.ShellExecute "%1", args, "", "runas" >> %temp%\sudo.tmp.vbs
      @cscript %temp%\sudo.tmp.vbs
    2. Após isto, salve o arquivo como sudo.cmd:
    3. Copie para alguma pasta que esteja no path, por exemplo a pasta c:\windows\system32
    Para iniciar o prompt de comando em modo adminisrtador realize o seguinte comando :
    sudo cmd

    Fonte: http://www.msfn.org/board/topic/142153-sudo-equivalent-for-windows-vista7/

    1-7 of 7