Tech
Um nível acimaComportamentos estranhos do skype
Hoje, descobri em duas máquinas aqui no escritório conexões estranhas com hosts desconhecidos usando portas fora do comum. Fiquei preocupado, já o que o motivo de minha pesquisa foi a instalação de um software de procedência duvidosa. O resultado do netstat foi este:
TCP hp:1085 d235-138-59.home1.cgocable.net:24066 ESTABLISHED
3744 Skype -> 1085 TCP C:\Arquivos de programas\Skype\Phone\Skype.exe
Com o google, cheguei a este relato, de uma instituição na Suíça:
http://nic.phys.ethz.ch/news/1106655341/index_htmlque, em outras palavras, dizia que o skype cria conexões ponto a ponto na internet com máquinas aleatórios com o intuíto de melhorar a rede e que este tipo de uso está previsto no contrato que você aceita ao usar o sistema:
Artigo 4 Permissão para uso
4.1 Permissão para usar Seu computador. A fim de receber os benefícios oferecidos pelo Software Skype, Você, pelo presente instrumento, concede permissão para que o Software Skype utilize o processador e a largura de banda de Seu computador para o fim limitado de intermediar a comunicação entre os usuários do Software Skype.
Ver em: http://www.skype.com/intl/pt/company/legal/eula/index.html
- Category(s)
- Tech
Bind entre ckaRecordset e controles visuais do Visual Studio
Um guia sobre DELEGATES (os ponteiros para função do VB.NET)
Veja: http://www.codeproject.com/vb/net/Delegate.asp
O artigo acima explica sobre DELEGATES. Um recurso bem interessante. Permite não só criar um ponteiro seguro para métodos e funções, como servir para anexar várias funções em um único ponteiro de forma que você possa chamá-las todas de uma vez. Veja este exemplo compilado do artigo acima:
'Definindo um DELEGATE
Public Delegate Sub GreetingDelegate(ByVal MsgString As String)
Public Sub GoodMoring(ByVal YourName As String)
Console.WriteLine("Good Morning " + YourName + " !")
End Sub
Public Sub GoodNight(ByVal YourName As String)
Console.WriteLine("Good Night " + YourName + " !")
End Sub
'Instanciando o DELEGATE (definido acima)
Dim MyGreeting As GreetingDelegate
'Here we assign the address of the function we wish to encapsulate
'to the delegate
Console.WriteLine("Adding 'GoodMoring' Reference To A Delegate...")
MyGreeting = AddressOf GoodMoring
' E finalmente:
'Invoking the delegate
Console.WriteLine("Invoking Delegate...")
MyGreeting.Invoke("Rogerio")
' ou...
MyGreeting("Rogerio")
' Combinando DELEGATES:
Dim MorningGreets As GreetingDelegate
Dim EveningGreets As GreetingDelegate
MorningGreets = AddressOf GoodMorning
EveningGreets = New GreetingDelegate(AddressOf GoodEvening)
Console.WriteLine("Adding 'MorningGreets' And" & _
" 'EveningGreets' References To A Delegate...")
Dim AllGreets As GreetingDelegate = _
[Delegate].Combine(MorningGreets, EveningGreets)
AllGreets("Rogerio")
- Category(s)
- Tech
Sabe como instalar o MSDE manualmente?
Para instalar o MSDE manualmente, use o console do Windows (cmd ou command) para se posicionar no diretório onde está o setup. O setup do MSDE acompanha a instalação completa do Kankei. Digite o seguinte comando:
setup sapwd="SenhaDoSaSegredo" disablenetworkprotocols=0 securitymode=sql
O Kankei só trabalha com securitymode=sql e a configuração disablenetworkprotocols=0 permite que outras máquinas acessem este servidor.
O setup não mostra nenhuma tela. É difícil saber quando ele termina. Uma sugestão é chamar o "Service Manager". Se ele aparecer e você conseguir visualizar o servidor rodando é porquê já instalou.
Restaurando backups através do osql
Em um cliente, podemos ter problemas usando o Kankei para restaurar uns backups problemáticos. Podemos não ter o "Enterprise Manager" que NÃO VEM COM O MSDE. Mas qualquer instalação terá o osql. Veja algumas operações que você pode fazer com o osql.
Como visualizar o conteúdo de um backup?
- Logar no osql:
c:\temp>osql -U sa -P senhaDosa
Pesquisar o backup:
1> RESTORE FILELISTONLY FROM DISK='C:\TEMP\ARQUIVO.BAK'
2> GO
Como restaurar um database, especificando o nome lógico e a pasta destino
- Logar no osql:
c:\temp>osql -U sa -P senhaDosa
Fazer o restore:
1> RESTORE DATABASE EscolhaUmNome
2> FROM DISK='c:\temp\arquivoBackup.bak'
3> WITH MOVE 'Bento_dat' to 'c:\temp\novoData.mdf',
4> MOVE 'Bento_log' to 'c:\temp\novoLog.ldf'
5> go
- Category(s)
- Tech
The LINQ Project
Antigamente, e provavelmente ainda hoje, era possível usar no COBOL, em
em C, um recurso chamado "Embbeded SQL" onde você misturava código
COBOL, ou C, com SQL. Mas eu não gostava muito disso pois o que ocorria
era que o compilador gerava código para tratar as partes SQL durante a
compilação. Ou seja, havia um pré-compilador.
Agora, voltaremos a ver isto novamente. Mas com muito mais
elegância. O SQL vai se fundir semanticamente como extensões de
linguagens como VB ou o C# de forma que registros vão virar instâncias
de classes "on the fly". Haverá suporte até na criação de classes
anônimas a partir de queries SQL. Exemplo:
var q
=
from
c in db.Customers
where
c.City == "London"
select
new { c.CompanyName, c.Phone };
foreach(var c in q)
Console.WriteLine(“{0}, {1}”, c.CompanyName, c.Phone);
Mais detalhes em:
http://msdn.microsoft.com/data/ref/linq/ (veja o link DLinq Overview)
- Category(s)
- Tech
Máscaras em Relatórios.
Eventualmente, na montagem de um relatório, se quer que, ao invés de aparecer uma informação de data descrita na forma númerica original "30/02/2006", apareça assim: "Curitiba, 30 de fevereiro de 2006". Para isto, basta que você arraste a questão do tipo data para o relatório, em seguida altere nas propriedades a opção "visivel" de "sim" para "não". Agora, arraste uma etiqueta para dentro do relatório e posicione no local onde irá ficar, troque o texto "etiqueta" por este: "<%=Format(obj("CodeDaQuestaoData"),"\\C\\uritiba, dd \\d\\e mmmm \\d\\e yyyy")%>" . Note os caracteres entre as barras-duplas, que se não estiverem assim, podem se confundir com os caracteres usuados no código. Neste caso, a barra simples não irá funcionar.
- Category(s)
- Tech
Praga que rouba dados se espalha pelo Orkut
"Está circulando pelo Orkut uma praga que é capaz de enviar scraps (recados) automaticamente para todos os contatos da vítima na rede social, além de roubar senhas e contas bancárias de um micro infectado através da captura de teclas e cliques.
Apesar de que aqueles que receberem o recado precisam clicar em um link para se infectar, a relação de confiança existente entre os amigos aumenta muito a possibilidade de o usuário clicar ..."
Leia mais em: http://linhadefensiva.uol.com.br/2006/05/orkut-festa/Uma parte bem interessante do artigo é a que explica sobre alguns processos que ficam rodando:
- "Como faço para saber se estou infectado?
-
No Windows XP ou 2000, aperte CTRL+SHIFT+ESC, vá na aba “Processos” e verifique se estão na lista um desses:
- msbcs.exe
- cmrss.exe (não confunda com verdadeiro “csrss.exe”)
- system32.exe (não confunda com o “System”)
- lsass32.exe (não confunda com o verdadeiro “lsass.exe”)
A ferramenta remove esses quatro arquivos. Se eles persistirem depois de você usar a ferramenta, veja o nosso fórum.
Usuários de Windows 98, 95 ou ME precisam do Process Explorer para verificar a presença desses processos.
Nota: Somente os dois primeiros arquivos são dessa infecção. Os outros dois são de outras variantes comuns de cavalos-de-tróia que roubam senhas de banco."
- Category(s)
- Tech