<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://w.rkdrm.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rkdrm</id>
		<title>Richard&#039;s Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://w.rkdrm.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rkdrm"/>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Special:Contributions/Rkdrm"/>
		<updated>2026-09-11T08:23:13Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.25.2</generator>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=954</id>
		<title>SQL Server</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=954"/>
				<updated>2017-05-02T04:30:18Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://msdn.microsoft.com/en-us/library/aa302392.aspx Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication]&lt;br /&gt;
&lt;br /&gt;
=== Count database connections in database ===&lt;br /&gt;
 SELECT DB_NAME(sP.dbid) AS the_database&lt;br /&gt;
        , COUNT(sP.spid) AS total_database_connections&lt;br /&gt;
 FROM sys.sysprocesses sP&lt;br /&gt;
 GROUP BY DB_NAME(sP.dbid)&lt;br /&gt;
 ORDER BY 1;&lt;br /&gt;
&lt;br /&gt;
=== List non-clustered indexes in database ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
 select t.name as tablename, i.* &lt;br /&gt;
 from sys.indexes i, sys.tables t&lt;br /&gt;
 where i.object_id = t.object_id&lt;br /&gt;
  and i.type_desc = &amp;#039;NONCLUSTERED&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== List unused indexes in database ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
SELECT   DB_NAME() AS DATABASENAME, &lt;br /&gt;
         OBJECT_NAME(B.OBJECT_ID) AS TABLENAME, &lt;br /&gt;
         B.NAME AS INDEXNAME, &lt;br /&gt;
         B.INDEX_ID &lt;br /&gt;
FROM     SYS.OBJECTS A &lt;br /&gt;
         INNER JOIN SYS.INDEXES B &lt;br /&gt;
           ON A.OBJECT_ID = B.OBJECT_ID &lt;br /&gt;
WHERE    NOT EXISTS (SELECT * &lt;br /&gt;
                     FROM   SYS.DM_DB_INDEX_USAGE_STATS C &lt;br /&gt;
                     WHERE  B.OBJECT_ID = C.OBJECT_ID &lt;br /&gt;
                            AND B.INDEX_ID = C.INDEX_ID) &lt;br /&gt;
         AND A.TYPE &amp;lt;&amp;gt; &amp;#039;S&amp;#039; &lt;br /&gt;
ORDER BY 1, 2, 3&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Identify &amp;#039;missing&amp;#039; indexes ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
 SELECT&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) AS improvement_measure,&lt;br /&gt;
    &amp;#039;CREATE INDEX missing_index_&amp;#039; + CONVERT(varchar, mig.index_group_handle) +&lt;br /&gt;
    &amp;#039;_&amp;#039; + CONVERT(varchar, mid.index_handle) + &amp;#039; ON &amp;#039; + mid.statement + &amp;#039; (&amp;#039; +&lt;br /&gt;
    ISNULL(mid.equality_columns, &amp;#039;&amp;#039;) +&lt;br /&gt;
    CASE WHEN mid.equality_columns IS NOT NULL AND&lt;br /&gt;
              mid.inequality_columns IS NOT NULL THEN &amp;#039;,&amp;#039;&lt;br /&gt;
         ELSE &amp;#039;&amp;#039;&lt;br /&gt;
    END + ISNULL(mid.inequality_columns, &amp;#039;&amp;#039;) + &amp;#039;)&amp;#039; + ISNULL(&amp;#039; INCLUDE (&amp;#039; +&lt;br /&gt;
                                                            mid.included_columns +&lt;br /&gt;
                                                            &amp;#039;)&amp;#039;, &amp;#039;&amp;#039;) AS create_index_statement,&lt;br /&gt;
    migs.*,&lt;br /&gt;
    mid.database_id,&lt;br /&gt;
    mid.[object_id],&lt;br /&gt;
    mig.index_group_handle,&lt;br /&gt;
    mid.index_handle&lt;br /&gt;
 FROM&lt;br /&gt;
    sys.dm_db_missing_index_groups mig INNER JOIN &lt;br /&gt;
    sys.dm_db_missing_index_group_stats migs ON migs.group_handle = mig.index_group_handle INNER JOIN&lt;br /&gt;
    sys.dm_db_missing_index_details mid ON mig.index_handle = mid.index_handle&lt;br /&gt;
 WHERE&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) &amp;gt; 10 AND&lt;br /&gt;
    database_id = DB_ID()&lt;br /&gt;
 ORDER BY&lt;br /&gt;
    migs.avg_total_user_cost * migs.avg_user_impact * (migs.user_seeks +&lt;br /&gt;
                                                       migs.user_scans) DESC&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== List permissions each table in a database ===&lt;br /&gt;
Use the sp_helprotect system stored proc. Run with no arguments it list permissions on all database objects&lt;br /&gt;
&lt;br /&gt;
=== List all tables in a database ===&lt;br /&gt;
 Use databasename&lt;br /&gt;
 SELECT * from sys.tables&lt;br /&gt;
&lt;br /&gt;
=== Run a command on each table in a database ===&lt;br /&gt;
Use the sp_msforeachtable undocumented system stored proc, for example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To restrict tables to those in the dbo schema, use the @whereAnd parameter:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039; ,&lt;br /&gt;
  @whereAnd = &amp;#039;and uid = 1&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SQL 2008 - Change sysadmin password on local database ===&lt;br /&gt;
&lt;br /&gt;
Pre-requisite: Make sure your Domain login is a member of the PC’s local admin group.&lt;br /&gt;
&lt;br /&gt;
1)	Stop SQL Server (either from Management Studio or Services)&lt;br /&gt;
&lt;br /&gt;
2)	Open a cmd prompt at your sql installation folder (C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn) and run: sqlserv.exe –m to put it into single user mode. Leave the command window open.&lt;br /&gt;
&lt;br /&gt;
3)	Open another cmd prompt (pathed) and run sqlcmd –E –S .&lt;br /&gt;
   CREATE LOGIN [BEACON\myUsername] FROM WINDOWS WITH DEFAULT_DATABASE=[master]&lt;br /&gt;
   EXEC master..sp_addsrvrolemember @loginame = N&amp;#039;BEACON\myUsername&amp;#039;, @rolename = N&amp;#039;sysadmin&amp;#039;&lt;br /&gt;
&lt;br /&gt;
4)	Close the both command windows and restart the SQL Service&lt;br /&gt;
&lt;br /&gt;
Open SS Management Studio, expand server roles and check you are in the sysadmin role.&lt;br /&gt;
&lt;br /&gt;
==== Create AdventureWorks Sample Cube for 2008/R2 Analysis Services ====&lt;br /&gt;
* [http://msftdbprodsamples.codeplex.com/wikipage?title=Installing%20Analysis%20Services%20Database Installing Analysis Services Database (CodePlex)]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=953</id>
		<title>SQL Server</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=953"/>
				<updated>2017-05-02T03:46:47Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://msdn.microsoft.com/en-us/library/aa302392.aspx Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication]&lt;br /&gt;
&lt;br /&gt;
=== Count database connections in database ===&lt;br /&gt;
 SELECT DB_NAME(sP.dbid) AS the_database&lt;br /&gt;
        , COUNT(sP.spid) AS total_database_connections&lt;br /&gt;
 FROM sys.sysprocesses sP&lt;br /&gt;
 GROUP BY DB_NAME(sP.dbid)&lt;br /&gt;
 ORDER BY 1;&lt;br /&gt;
&lt;br /&gt;
=== List non-clustered indexes in database ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
 select t.name as tablename, i.* &lt;br /&gt;
 from sys.indexes i, sys.tables t&lt;br /&gt;
 where i.object_id = t.object_id&lt;br /&gt;
  and i.type_desc = &amp;#039;NONCLUSTERED&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Identify &amp;#039;missing&amp;#039; indexes ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
 SELECT&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) AS improvement_measure,&lt;br /&gt;
    &amp;#039;CREATE INDEX missing_index_&amp;#039; + CONVERT(varchar, mig.index_group_handle) +&lt;br /&gt;
    &amp;#039;_&amp;#039; + CONVERT(varchar, mid.index_handle) + &amp;#039; ON &amp;#039; + mid.statement + &amp;#039; (&amp;#039; +&lt;br /&gt;
    ISNULL(mid.equality_columns, &amp;#039;&amp;#039;) +&lt;br /&gt;
    CASE WHEN mid.equality_columns IS NOT NULL AND&lt;br /&gt;
              mid.inequality_columns IS NOT NULL THEN &amp;#039;,&amp;#039;&lt;br /&gt;
         ELSE &amp;#039;&amp;#039;&lt;br /&gt;
    END + ISNULL(mid.inequality_columns, &amp;#039;&amp;#039;) + &amp;#039;)&amp;#039; + ISNULL(&amp;#039; INCLUDE (&amp;#039; +&lt;br /&gt;
                                                            mid.included_columns +&lt;br /&gt;
                                                            &amp;#039;)&amp;#039;, &amp;#039;&amp;#039;) AS create_index_statement,&lt;br /&gt;
    migs.*,&lt;br /&gt;
    mid.database_id,&lt;br /&gt;
    mid.[object_id],&lt;br /&gt;
    mig.index_group_handle,&lt;br /&gt;
    mid.index_handle&lt;br /&gt;
 FROM&lt;br /&gt;
    sys.dm_db_missing_index_groups mig INNER JOIN &lt;br /&gt;
    sys.dm_db_missing_index_group_stats migs ON migs.group_handle = mig.index_group_handle INNER JOIN&lt;br /&gt;
    sys.dm_db_missing_index_details mid ON mig.index_handle = mid.index_handle&lt;br /&gt;
 WHERE&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) &amp;gt; 10 AND&lt;br /&gt;
    database_id = DB_ID()&lt;br /&gt;
 ORDER BY&lt;br /&gt;
    migs.avg_total_user_cost * migs.avg_user_impact * (migs.user_seeks +&lt;br /&gt;
                                                       migs.user_scans) DESC&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== List permissions each table in a database ===&lt;br /&gt;
Use the sp_helprotect system stored proc. Run with no arguments it list permissions on all database objects&lt;br /&gt;
&lt;br /&gt;
=== List all tables in a database ===&lt;br /&gt;
 Use databasename&lt;br /&gt;
 SELECT * from sys.tables&lt;br /&gt;
&lt;br /&gt;
=== Run a command on each table in a database ===&lt;br /&gt;
Use the sp_msforeachtable undocumented system stored proc, for example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To restrict tables to those in the dbo schema, use the @whereAnd parameter:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039; ,&lt;br /&gt;
  @whereAnd = &amp;#039;and uid = 1&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SQL 2008 - Change sysadmin password on local database ===&lt;br /&gt;
&lt;br /&gt;
Pre-requisite: Make sure your Domain login is a member of the PC’s local admin group.&lt;br /&gt;
&lt;br /&gt;
1)	Stop SQL Server (either from Management Studio or Services)&lt;br /&gt;
&lt;br /&gt;
2)	Open a cmd prompt at your sql installation folder (C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn) and run: sqlserv.exe –m to put it into single user mode. Leave the command window open.&lt;br /&gt;
&lt;br /&gt;
3)	Open another cmd prompt (pathed) and run sqlcmd –E –S .&lt;br /&gt;
   CREATE LOGIN [BEACON\myUsername] FROM WINDOWS WITH DEFAULT_DATABASE=[master]&lt;br /&gt;
   EXEC master..sp_addsrvrolemember @loginame = N&amp;#039;BEACON\myUsername&amp;#039;, @rolename = N&amp;#039;sysadmin&amp;#039;&lt;br /&gt;
&lt;br /&gt;
4)	Close the both command windows and restart the SQL Service&lt;br /&gt;
&lt;br /&gt;
Open SS Management Studio, expand server roles and check you are in the sysadmin role.&lt;br /&gt;
&lt;br /&gt;
==== Create AdventureWorks Sample Cube for 2008/R2 Analysis Services ====&lt;br /&gt;
* [http://msftdbprodsamples.codeplex.com/wikipage?title=Installing%20Analysis%20Services%20Database Installing Analysis Services Database (CodePlex)]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=952</id>
		<title>SQL Server</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=952"/>
				<updated>2017-05-02T03:44:53Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://msdn.microsoft.com/en-us/library/aa302392.aspx Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication]&lt;br /&gt;
&lt;br /&gt;
=== Count database connections in database ===&lt;br /&gt;
 SELECT DB_NAME(sP.dbid) AS the_database&lt;br /&gt;
        , COUNT(sP.spid) AS total_database_connections&lt;br /&gt;
 FROM sys.sysprocesses sP&lt;br /&gt;
 GROUP BY DB_NAME(sP.dbid)&lt;br /&gt;
 ORDER BY 1;&lt;br /&gt;
&lt;br /&gt;
=== Identify &amp;#039;missing&amp;#039; indexes ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
 SELECT&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) AS improvement_measure,&lt;br /&gt;
    &amp;#039;CREATE INDEX missing_index_&amp;#039; + CONVERT(varchar, mig.index_group_handle) +&lt;br /&gt;
    &amp;#039;_&amp;#039; + CONVERT(varchar, mid.index_handle) + &amp;#039; ON &amp;#039; + mid.statement + &amp;#039; (&amp;#039; +&lt;br /&gt;
    ISNULL(mid.equality_columns, &amp;#039;&amp;#039;) +&lt;br /&gt;
    CASE WHEN mid.equality_columns IS NOT NULL AND&lt;br /&gt;
              mid.inequality_columns IS NOT NULL THEN &amp;#039;,&amp;#039;&lt;br /&gt;
         ELSE &amp;#039;&amp;#039;&lt;br /&gt;
    END + ISNULL(mid.inequality_columns, &amp;#039;&amp;#039;) + &amp;#039;)&amp;#039; + ISNULL(&amp;#039; INCLUDE (&amp;#039; +&lt;br /&gt;
                                                            mid.included_columns +&lt;br /&gt;
                                                            &amp;#039;)&amp;#039;, &amp;#039;&amp;#039;) AS create_index_statement,&lt;br /&gt;
    migs.*,&lt;br /&gt;
    mid.database_id,&lt;br /&gt;
    mid.[object_id],&lt;br /&gt;
    mig.index_group_handle,&lt;br /&gt;
    mid.index_handle&lt;br /&gt;
 FROM&lt;br /&gt;
    sys.dm_db_missing_index_groups mig INNER JOIN &lt;br /&gt;
    sys.dm_db_missing_index_group_stats migs ON migs.group_handle = mig.index_group_handle INNER JOIN&lt;br /&gt;
    sys.dm_db_missing_index_details mid ON mig.index_handle = mid.index_handle&lt;br /&gt;
 WHERE&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) &amp;gt; 10 AND&lt;br /&gt;
    database_id = DB_ID()&lt;br /&gt;
 ORDER BY&lt;br /&gt;
    migs.avg_total_user_cost * migs.avg_user_impact * (migs.user_seeks +&lt;br /&gt;
                                                       migs.user_scans) DESC&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== List permissions each table in a database ===&lt;br /&gt;
Use the sp_helprotect system stored proc. Run with no arguments it list permissions on all database objects&lt;br /&gt;
&lt;br /&gt;
=== List all tables in a database ===&lt;br /&gt;
 Use databasename&lt;br /&gt;
 SELECT * from sys.tables&lt;br /&gt;
&lt;br /&gt;
=== Run a command on each table in a database ===&lt;br /&gt;
Use the sp_msforeachtable undocumented system stored proc, for example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To restrict tables to those in the dbo schema, use the @whereAnd parameter:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039; ,&lt;br /&gt;
  @whereAnd = &amp;#039;and uid = 1&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SQL 2008 - Change sysadmin password on local database ===&lt;br /&gt;
&lt;br /&gt;
Pre-requisite: Make sure your Domain login is a member of the PC’s local admin group.&lt;br /&gt;
&lt;br /&gt;
1)	Stop SQL Server (either from Management Studio or Services)&lt;br /&gt;
&lt;br /&gt;
2)	Open a cmd prompt at your sql installation folder (C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn) and run: sqlserv.exe –m to put it into single user mode. Leave the command window open.&lt;br /&gt;
&lt;br /&gt;
3)	Open another cmd prompt (pathed) and run sqlcmd –E –S .&lt;br /&gt;
   CREATE LOGIN [BEACON\myUsername] FROM WINDOWS WITH DEFAULT_DATABASE=[master]&lt;br /&gt;
   EXEC master..sp_addsrvrolemember @loginame = N&amp;#039;BEACON\myUsername&amp;#039;, @rolename = N&amp;#039;sysadmin&amp;#039;&lt;br /&gt;
&lt;br /&gt;
4)	Close the both command windows and restart the SQL Service&lt;br /&gt;
&lt;br /&gt;
Open SS Management Studio, expand server roles and check you are in the sysadmin role.&lt;br /&gt;
&lt;br /&gt;
==== Create AdventureWorks Sample Cube for 2008/R2 Analysis Services ====&lt;br /&gt;
* [http://msftdbprodsamples.codeplex.com/wikipage?title=Installing%20Analysis%20Services%20Database Installing Analysis Services Database (CodePlex)]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=951</id>
		<title>SQL Server</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=951"/>
				<updated>2017-05-02T03:43:44Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: /* Identify &amp;#039;missing&amp;#039; indexes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://msdn.microsoft.com/en-us/library/aa302392.aspx Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication]&lt;br /&gt;
&lt;br /&gt;
=== Count database connections in database ===&lt;br /&gt;
 SELECT DB_NAME(sP.dbid) AS the_database&lt;br /&gt;
        , COUNT(sP.spid) AS total_database_connections&lt;br /&gt;
 FROM sys.sysprocesses sP&lt;br /&gt;
 GROUP BY DB_NAME(sP.dbid)&lt;br /&gt;
 ORDER BY 1;&lt;br /&gt;
&lt;br /&gt;
=== Identify &amp;#039;missing&amp;#039; indexes ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 SELECT&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) AS improvement_measure,&lt;br /&gt;
    &amp;#039;CREATE INDEX missing_index_&amp;#039; + CONVERT(varchar, mig.index_group_handle) +&lt;br /&gt;
    &amp;#039;_&amp;#039; + CONVERT(varchar, mid.index_handle) + &amp;#039; ON &amp;#039; + mid.statement + &amp;#039; (&amp;#039; +&lt;br /&gt;
    ISNULL(mid.equality_columns, &amp;#039;&amp;#039;) +&lt;br /&gt;
    CASE WHEN mid.equality_columns IS NOT NULL AND&lt;br /&gt;
              mid.inequality_columns IS NOT NULL THEN &amp;#039;,&amp;#039;&lt;br /&gt;
         ELSE &amp;#039;&amp;#039;&lt;br /&gt;
    END + ISNULL(mid.inequality_columns, &amp;#039;&amp;#039;) + &amp;#039;)&amp;#039; + ISNULL(&amp;#039; INCLUDE (&amp;#039; +&lt;br /&gt;
                                                            mid.included_columns +&lt;br /&gt;
                                                            &amp;#039;)&amp;#039;, &amp;#039;&amp;#039;) AS create_index_statement,&lt;br /&gt;
    migs.*,&lt;br /&gt;
    mid.database_id,&lt;br /&gt;
    mid.[object_id],&lt;br /&gt;
    mig.index_group_handle,&lt;br /&gt;
    mid.index_handle&lt;br /&gt;
 FROM&lt;br /&gt;
    sys.dm_db_missing_index_groups mig INNER JOIN &lt;br /&gt;
    sys.dm_db_missing_index_group_stats migs ON migs.group_handle = mig.index_group_handle INNER JOIN&lt;br /&gt;
    sys.dm_db_missing_index_details mid ON mig.index_handle = mid.index_handle&lt;br /&gt;
 WHERE&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) &amp;gt; 10 AND&lt;br /&gt;
    database_id = DB_ID()&lt;br /&gt;
 ORDER BY&lt;br /&gt;
    migs.avg_total_user_cost * migs.avg_user_impact * (migs.user_seeks +&lt;br /&gt;
                                                       migs.user_scans) DESC&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== List permissions each table in a database ===&lt;br /&gt;
Use the sp_helprotect system stored proc. Run with no arguments it list permissions on all database objects&lt;br /&gt;
&lt;br /&gt;
=== List all tables in a database ===&lt;br /&gt;
 Use databasename&lt;br /&gt;
 SELECT * from sys.tables&lt;br /&gt;
&lt;br /&gt;
=== Run a command on each table in a database ===&lt;br /&gt;
Use the sp_msforeachtable undocumented system stored proc, for example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To restrict tables to those in the dbo schema, use the @whereAnd parameter:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039; ,&lt;br /&gt;
  @whereAnd = &amp;#039;and uid = 1&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SQL 2008 - Change sysadmin password on local database ===&lt;br /&gt;
&lt;br /&gt;
Pre-requisite: Make sure your Domain login is a member of the PC’s local admin group.&lt;br /&gt;
&lt;br /&gt;
1)	Stop SQL Server (either from Management Studio or Services)&lt;br /&gt;
&lt;br /&gt;
2)	Open a cmd prompt at your sql installation folder (C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn) and run: sqlserv.exe –m to put it into single user mode. Leave the command window open.&lt;br /&gt;
&lt;br /&gt;
3)	Open another cmd prompt (pathed) and run sqlcmd –E –S .&lt;br /&gt;
   CREATE LOGIN [BEACON\myUsername] FROM WINDOWS WITH DEFAULT_DATABASE=[master]&lt;br /&gt;
   EXEC master..sp_addsrvrolemember @loginame = N&amp;#039;BEACON\myUsername&amp;#039;, @rolename = N&amp;#039;sysadmin&amp;#039;&lt;br /&gt;
&lt;br /&gt;
4)	Close the both command windows and restart the SQL Service&lt;br /&gt;
&lt;br /&gt;
Open SS Management Studio, expand server roles and check you are in the sysadmin role.&lt;br /&gt;
&lt;br /&gt;
==== Create AdventureWorks Sample Cube for 2008/R2 Analysis Services ====&lt;br /&gt;
* [http://msftdbprodsamples.codeplex.com/wikipage?title=Installing%20Analysis%20Services%20Database Installing Analysis Services Database (CodePlex)]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=950</id>
		<title>SQL Server</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=950"/>
				<updated>2017-05-02T03:42:13Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://msdn.microsoft.com/en-us/library/aa302392.aspx Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication]&lt;br /&gt;
&lt;br /&gt;
=== Count database connections in database ===&lt;br /&gt;
 SELECT DB_NAME(sP.dbid) AS the_database&lt;br /&gt;
        , COUNT(sP.spid) AS total_database_connections&lt;br /&gt;
 FROM sys.sysprocesses sP&lt;br /&gt;
 GROUP BY DB_NAME(sP.dbid)&lt;br /&gt;
 ORDER BY 1;&lt;br /&gt;
&lt;br /&gt;
=== Identify &amp;#039;missing&amp;#039; indexes ===&lt;br /&gt;
 SELECT&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) AS improvement_measure,&lt;br /&gt;
    &amp;#039;CREATE INDEX missing_index_&amp;#039; + CONVERT(varchar, mig.index_group_handle) +&lt;br /&gt;
    &amp;#039;_&amp;#039; + CONVERT(varchar, mid.index_handle) + &amp;#039; ON &amp;#039; + mid.statement + &amp;#039; (&amp;#039; +&lt;br /&gt;
    ISNULL(mid.equality_columns, &amp;#039;&amp;#039;) +&lt;br /&gt;
    CASE WHEN mid.equality_columns IS NOT NULL AND&lt;br /&gt;
              mid.inequality_columns IS NOT NULL THEN &amp;#039;,&amp;#039;&lt;br /&gt;
         ELSE &amp;#039;&amp;#039;&lt;br /&gt;
    END + ISNULL(mid.inequality_columns, &amp;#039;&amp;#039;) + &amp;#039;)&amp;#039; + ISNULL(&amp;#039; INCLUDE (&amp;#039; +&lt;br /&gt;
                                                            mid.included_columns +&lt;br /&gt;
                                                            &amp;#039;)&amp;#039;, &amp;#039;&amp;#039;) AS create_index_statement,&lt;br /&gt;
    migs.*,&lt;br /&gt;
    mid.database_id,&lt;br /&gt;
    mid.[object_id],&lt;br /&gt;
    mig.index_group_handle,&lt;br /&gt;
    mid.index_handle&lt;br /&gt;
 FROM&lt;br /&gt;
    sys.dm_db_missing_index_groups mig INNER JOIN &lt;br /&gt;
    sys.dm_db_missing_index_group_stats migs ON migs.group_handle = mig.index_group_handle INNER JOIN&lt;br /&gt;
    sys.dm_db_missing_index_details mid ON mig.index_handle = mid.index_handle&lt;br /&gt;
 WHERE&lt;br /&gt;
    CONVERT(decimal(28, 1), migs.avg_total_user_cost * migs.avg_user_impact *&lt;br /&gt;
    (migs.user_seeks + migs.user_scans)) &amp;gt; 10 AND&lt;br /&gt;
    database_id = DB_ID()&lt;br /&gt;
 ORDER BY&lt;br /&gt;
    migs.avg_total_user_cost * migs.avg_user_impact * (migs.user_seeks +&lt;br /&gt;
                                                       migs.user_scans) DESC&lt;br /&gt;
&lt;br /&gt;
=== List permissions each table in a database ===&lt;br /&gt;
Use the sp_helprotect system stored proc. Run with no arguments it list permissions on all database objects&lt;br /&gt;
&lt;br /&gt;
=== List all tables in a database ===&lt;br /&gt;
 Use databasename&lt;br /&gt;
 SELECT * from sys.tables&lt;br /&gt;
&lt;br /&gt;
=== Run a command on each table in a database ===&lt;br /&gt;
Use the sp_msforeachtable undocumented system stored proc, for example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To restrict tables to those in the dbo schema, use the @whereAnd parameter:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039; ,&lt;br /&gt;
  @whereAnd = &amp;#039;and uid = 1&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SQL 2008 - Change sysadmin password on local database ===&lt;br /&gt;
&lt;br /&gt;
Pre-requisite: Make sure your Domain login is a member of the PC’s local admin group.&lt;br /&gt;
&lt;br /&gt;
1)	Stop SQL Server (either from Management Studio or Services)&lt;br /&gt;
&lt;br /&gt;
2)	Open a cmd prompt at your sql installation folder (C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn) and run: sqlserv.exe –m to put it into single user mode. Leave the command window open.&lt;br /&gt;
&lt;br /&gt;
3)	Open another cmd prompt (pathed) and run sqlcmd –E –S .&lt;br /&gt;
   CREATE LOGIN [BEACON\myUsername] FROM WINDOWS WITH DEFAULT_DATABASE=[master]&lt;br /&gt;
   EXEC master..sp_addsrvrolemember @loginame = N&amp;#039;BEACON\myUsername&amp;#039;, @rolename = N&amp;#039;sysadmin&amp;#039;&lt;br /&gt;
&lt;br /&gt;
4)	Close the both command windows and restart the SQL Service&lt;br /&gt;
&lt;br /&gt;
Open SS Management Studio, expand server roles and check you are in the sysadmin role.&lt;br /&gt;
&lt;br /&gt;
==== Create AdventureWorks Sample Cube for 2008/R2 Analysis Services ====&lt;br /&gt;
* [http://msftdbprodsamples.codeplex.com/wikipage?title=Installing%20Analysis%20Services%20Database Installing Analysis Services Database (CodePlex)]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=949</id>
		<title>SQL Server</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=SQL_Server&amp;diff=949"/>
				<updated>2017-05-02T03:41:03Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://msdn.microsoft.com/en-us/library/aa302392.aspx Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication]&lt;br /&gt;
&lt;br /&gt;
=== Count database connections in database ===&lt;br /&gt;
 SELECT DB_NAME(sP.dbid) AS the_database&lt;br /&gt;
        , COUNT(sP.spid) AS total_database_connections&lt;br /&gt;
 FROM sys.sysprocesses sP&lt;br /&gt;
 GROUP BY DB_NAME(sP.dbid)&lt;br /&gt;
 ORDER BY 1;&lt;br /&gt;
&lt;br /&gt;
=== List permissions each table in a database ===&lt;br /&gt;
Use the sp_helprotect system stored proc. Run with no arguments it list permissions on all database objects&lt;br /&gt;
&lt;br /&gt;
=== List all tables in a database ===&lt;br /&gt;
 Use databasename&lt;br /&gt;
 SELECT * from sys.tables&lt;br /&gt;
&lt;br /&gt;
=== Run a command on each table in a database ===&lt;br /&gt;
Use the sp_msforeachtable undocumented system stored proc, for example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To restrict tables to those in the dbo schema, use the @whereAnd parameter:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sp_msforeachTable @command1=&amp;#039;select count(*) NR from ? &lt;br /&gt;
  where CreatedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039; or ModifiedBy = &amp;#039;&amp;#039;kurzejar&amp;#039;&amp;#039;&lt;br /&gt;
&amp;#039; ,&lt;br /&gt;
  @whereAnd = &amp;#039;and uid = 1&amp;#039;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SQL 2008 - Change sysadmin password on local database ===&lt;br /&gt;
&lt;br /&gt;
Pre-requisite: Make sure your Domain login is a member of the PC’s local admin group.&lt;br /&gt;
&lt;br /&gt;
1)	Stop SQL Server (either from Management Studio or Services)&lt;br /&gt;
&lt;br /&gt;
2)	Open a cmd prompt at your sql installation folder (C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn) and run: sqlserv.exe –m to put it into single user mode. Leave the command window open.&lt;br /&gt;
&lt;br /&gt;
3)	Open another cmd prompt (pathed) and run sqlcmd –E –S .&lt;br /&gt;
   CREATE LOGIN [BEACON\myUsername] FROM WINDOWS WITH DEFAULT_DATABASE=[master]&lt;br /&gt;
   EXEC master..sp_addsrvrolemember @loginame = N&amp;#039;BEACON\myUsername&amp;#039;, @rolename = N&amp;#039;sysadmin&amp;#039;&lt;br /&gt;
&lt;br /&gt;
4)	Close the both command windows and restart the SQL Service&lt;br /&gt;
&lt;br /&gt;
Open SS Management Studio, expand server roles and check you are in the sysadmin role.&lt;br /&gt;
&lt;br /&gt;
==== Create AdventureWorks Sample Cube for 2008/R2 Analysis Services ====&lt;br /&gt;
* [http://msftdbprodsamples.codeplex.com/wikipage?title=Installing%20Analysis%20Services%20Database Installing Analysis Services Database (CodePlex)]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=ASP.NET&amp;diff=948</id>
		<title>ASP.NET</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=ASP.NET&amp;diff=948"/>
				<updated>2016-11-04T06:16:56Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://msdn.microsoft.com/en-us/magazine/dn802603.aspx &amp;#039;&amp;#039;&amp;#039;MSDN:&amp;#039;&amp;#039;&amp;#039; Async Programming : Introduction to Async/Await on ASP.NET]&lt;br /&gt;
&lt;br /&gt;
[https://www.asp.net/web-forms/overview/performance-and-caching/using-asynchronous-methods-in-aspnet-45 &amp;#039;&amp;#039;&amp;#039;www.asp.net:&amp;#039;&amp;#039;&amp;#039; Using Asynchronous Methods in ASP.NET 4.5]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=ASP.NET&amp;diff=947</id>
		<title>ASP.NET</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=ASP.NET&amp;diff=947"/>
				<updated>2016-11-04T06:16:16Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://msdn.microsoft.com/en-us/magazine/dn802603.aspx MSDN: Async Programming : Introduction to Async/Await on ASP.NET]&lt;br /&gt;
&lt;br /&gt;
[https://www.asp.net/web-forms/overview/performance-and-caching/using-asynchronous-methods-in-aspnet-45 www.asp.net: Using Asynchronous Methods in ASP.NET 4.5]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=ASP.NET&amp;diff=946</id>
		<title>ASP.NET</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=ASP.NET&amp;diff=946"/>
				<updated>2016-11-04T06:15:40Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://msdn.microsoft.com/en-us/magazine/dn802603.aspx Async Programming : Introduction to Async/Await on ASP.NET]&lt;br /&gt;
&lt;br /&gt;
[https://www.asp.net/web-forms/overview/performance-and-caching/using-asynchronous-methods-in-aspnet-45 Using Asynchronous Methods in ASP.NET 4.5]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=ASP.NET&amp;diff=945</id>
		<title>ASP.NET</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=ASP.NET&amp;diff=945"/>
				<updated>2016-11-04T06:12:51Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Created page with &amp;quot;[https://www.asp.net/web-forms/overview/performance-and-caching/using-asynchronous-methods-in-aspnet-45 Using Asynchronous Methods in ASP.NET 4.5]&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://www.asp.net/web-forms/overview/performance-and-caching/using-asynchronous-methods-in-aspnet-45 Using Asynchronous Methods in ASP.NET 4.5]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Software&amp;diff=944</id>
		<title>Software</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Software&amp;diff=944"/>
				<updated>2016-11-04T06:11:32Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Active Directory]]&lt;br /&gt;
* [[ASP.NET]]&lt;br /&gt;
* [[OpenGL]]&lt;br /&gt;
* [[SSL Certificates]]&lt;br /&gt;
* ESRI&lt;br /&gt;
** [[ESRI Silverlight &amp;amp; WPF]]&lt;br /&gt;
* GIS&lt;br /&gt;
** [http://deepearth.codeplex.com/ DeepEarth -CodePlex Silverlight control] - [http://deepearth.soulsolutions.com.au/nearmap/ Online Demo]&lt;br /&gt;
** [http://www.openstreetmap.org/ OpenStreetMap.org]&lt;br /&gt;
* [[Google Chrome]]&lt;br /&gt;
* [[Log4net]]&lt;br /&gt;
* [[Microsoft Windows]]&lt;br /&gt;
* [[Windows Server 2008]]&lt;br /&gt;
* [[Office 2007]]&lt;br /&gt;
** [[OpenXML]]&lt;br /&gt;
* [[MOSS 2007]]&lt;br /&gt;
* [[SharePoint 2010]]&lt;br /&gt;
* [[PerformancePoint 2010]]&lt;br /&gt;
* [[InfoPath 2010]]&lt;br /&gt;
* [[Microsoft Patterns &amp;amp; Practices]]&lt;br /&gt;
** [[CAL]] (Composite Application Library)&lt;br /&gt;
* [[DevExpress]]&lt;br /&gt;
* [[Microsoft LINQ]]&lt;br /&gt;
* [[Entity Framework 4]] (EF)&lt;br /&gt;
* [[Microsoft Workflow Foundation]] (WF)&lt;br /&gt;
* [[Windows Identity Foundation]] (WIF)&lt;br /&gt;
* [[Windows Communication Foundation]] (WCF)&lt;br /&gt;
* [[Windows Presentation Foundation]] (WPF)&lt;br /&gt;
* [[Windows Management Instrumentation]] (WMI)&lt;br /&gt;
* [[Microsoft Remote Desktop]] (RDP)&lt;br /&gt;
* [[Windows Phone 7]] (WP7)&lt;br /&gt;
* [[Silverlight]]&lt;br /&gt;
** Silverlight Desktops:&lt;br /&gt;
*** [https://www.wiki-os.org/ https://www.wiki-os.org/]&lt;br /&gt;
*** [http://silveos.com/ http://silveos.com/]&lt;br /&gt;
* [[.NET]]&lt;br /&gt;
* [[.NET AOP]]&lt;br /&gt;
* [[.NET &amp;amp; Memory Leaks]]&lt;br /&gt;
* [[Oracle]]&lt;br /&gt;
* [[Paint.Net]]&lt;br /&gt;
* [[Physics Engines]]&lt;br /&gt;
* [[Powershell]]&lt;br /&gt;
* [[SMO]]&lt;br /&gt;
* [[SQL Server]]&lt;br /&gt;
* [[SQL Server Analysis Services]]&lt;br /&gt;
* [[SQL Server Reporting Services]]&lt;br /&gt;
* [[T4]]&lt;br /&gt;
* [[Enterprise Architect]]&lt;br /&gt;
* [[VS 2008]]&lt;br /&gt;
* [[VS 2010]]&lt;br /&gt;
** [[C#]]&lt;br /&gt;
* [[Microsoft TFS2010]]&lt;br /&gt;
&lt;br /&gt;
* [[Resharper]]&lt;br /&gt;
* [[Security]]&lt;br /&gt;
&lt;br /&gt;
Mobile&lt;br /&gt;
* [[Mono / Xamarin]]&lt;br /&gt;
&lt;br /&gt;
Linux&lt;br /&gt;
* [[Webmin]]&lt;br /&gt;
* [[New Linux Disk]]&lt;br /&gt;
&lt;br /&gt;
Web&lt;br /&gt;
* [[Which CMS]]&lt;br /&gt;
* [http://arstechnica.com/web/news/2011/02/chrome-takes-10-usage-share-ie-continues-to-haemorrhage.ars Worldwide browser market share: January 2011 (ArsTechnica)]&lt;br /&gt;
* [[HTML]]&lt;br /&gt;
* [[HTTP]]&lt;br /&gt;
* [[Javascript]]&lt;br /&gt;
* [[IIS / Web Development]]&lt;br /&gt;
* [[Web Video]]&lt;br /&gt;
&lt;br /&gt;
Standards&lt;br /&gt;
* [[UPnP/DNLA]]&lt;br /&gt;
&lt;br /&gt;
Google&lt;br /&gt;
* [[Google Maps]]&lt;br /&gt;
&lt;br /&gt;
Media Servers&lt;br /&gt;
* [[MythTV]]&lt;br /&gt;
* [[MediaTomb]]&lt;br /&gt;
* [[MiniDLNA]]&lt;br /&gt;
&lt;br /&gt;
=== UsefulWare ===&lt;br /&gt;
* [http://code.msdn.microsoft.com/AddInSpy AddInSpy - provides details of Office 2007 Addins]&lt;br /&gt;
* [http://www.cpuid.com/ CPU-Z]&lt;br /&gt;
* [[Flash Video Player]] (.flv player - VLC)&lt;br /&gt;
* [http://www.getpaint.net/ Paint.Net]&lt;br /&gt;
** [http://forums.getpaint.net/index.php?/topic/927-icon-cursor-and-animated-cursor-format-v37-may-2010/?s=ef9afdad1cb4967893e4e9bc1cd6473d .ico and .cur Paint.Net addin]&lt;br /&gt;
* [http://ccollomb.free.fr/unlocker/ Unlocker - unlock locked Windows files]&lt;br /&gt;
* [http://www.wingrep.com/index.htm Windows Grep]&lt;br /&gt;
* [http://www.msfn.org/board/How-to-make-a-7-Zip-Switchless-Installer-t39048.html How to make a 7-Zip Switchless Installer]&lt;br /&gt;
* [http://www.ltr-data.se/opencode.html/#ImDisk ImDisk RAMDisk virtual disk driver] Supports 32&amp;amp;64 bit incl Windows 7, GPL open source.&lt;br /&gt;
&lt;br /&gt;
=== Free Open Source Icons ===&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Nuvola Nuvola (Wikipedia)]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Open_Clip_Art_Library Open Clipart Library (Wikipedia)]&lt;br /&gt;
* [http://david.bellot.free.fr/svg-cards/ LGPL license playing cards, SVG format]&lt;br /&gt;
* [http://www.iconarchive.com/ http://www.iconarchive.com/] - not sure about licensing&lt;br /&gt;
&lt;br /&gt;
=== Royalty-free Vectors ===&lt;br /&gt;
* [http://www.vectorstock.com/free-vectors http://www.vectorstock.com/free-vectors]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_26Jan2016.zip&amp;diff=943</id>
		<title>File:PhotosphereNoThreeJs 26Jan2016.zip</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_26Jan2016.zip&amp;diff=943"/>
				<updated>2016-01-26T07:33:55Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Handle initial rotation from gpano&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Handle initial rotation from gpano&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=942</id>
		<title>PhotoSphere</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=942"/>
				<updated>2016-01-26T07:20:27Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:photosphere9Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphere11Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_16Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_18Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_21Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_22Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_26Jan2016.zip]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_22Jan2016.zip&amp;diff=941</id>
		<title>File:PhotosphereNoThreeJs 22Jan2016.zip</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_22Jan2016.zip&amp;diff=941"/>
				<updated>2016-01-22T06:35:20Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Handle load texture from list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Handle load texture from list&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=940</id>
		<title>PhotoSphere</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=940"/>
				<updated>2016-01-22T06:22:41Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:photosphere9Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphere11Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_16Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_18Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_21Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_22Jan2016.zip]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_21Jan2016.zip&amp;diff=939</id>
		<title>File:PhotosphereNoThreeJs 21Jan2016.zip</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_21Jan2016.zip&amp;diff=939"/>
				<updated>2016-01-21T09:48:07Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Got some rotation going&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Got some rotation going&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=938</id>
		<title>PhotoSphere</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=938"/>
				<updated>2016-01-21T09:35:28Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:photosphere9Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphere11Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_16Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_18Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_21Jan2016.zip]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_18Jan2016.zip&amp;diff=937</id>
		<title>File:PhotosphereNoThreeJs 18Jan2016.zip</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_18Jan2016.zip&amp;diff=937"/>
				<updated>2016-01-18T20:43:52Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Displays plain sphere, handles browser resize&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Displays plain sphere, handles browser resize&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=936</id>
		<title>PhotoSphere</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=936"/>
				<updated>2016-01-18T20:32:18Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:photosphere9Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphere11Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_16Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_18Jan2016.zip]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=935</id>
		<title>PhotoSphere</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=935"/>
				<updated>2016-01-18T20:31:56Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:photosphere9Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphere11Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_16Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_16Jan2016.zip]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_16Jan2016.zip&amp;diff=934</id>
		<title>File:PhotosphereNoThreeJs 16Jan2016.zip</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=File:PhotosphereNoThreeJs_16Jan2016.zip&amp;diff=934"/>
				<updated>2016-01-16T10:58:11Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=933</id>
		<title>PhotoSphere</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=933"/>
				<updated>2016-01-16T10:46:48Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:photosphere9Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphere11Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphereNoThreeJs_16Jan2016.zip]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=File:Photosphere11Jan2016.zip&amp;diff=932</id>
		<title>File:Photosphere11Jan2016.zip</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=File:Photosphere11Jan2016.zip&amp;diff=932"/>
				<updated>2016-01-12T10:11:45Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=931</id>
		<title>PhotoSphere</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=931"/>
				<updated>2016-01-12T10:00:05Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:photosphere9Jan2016.zip]]&lt;br /&gt;
* [[Media:photosphere11Jan2016.zip]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=File:Photosphere9Jan2016.zip&amp;diff=930</id>
		<title>File:Photosphere9Jan2016.zip</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=File:Photosphere9Jan2016.zip&amp;diff=930"/>
				<updated>2016-01-09T09:40:59Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=929</id>
		<title>PhotoSphere</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=PhotoSphere&amp;diff=929"/>
				<updated>2016-01-09T09:29:37Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Created page with &amp;quot;* Media:photosphere9Jan2016.zip&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:photosphere9Jan2016.zip]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Main_Page&amp;diff=928</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Main_Page&amp;diff=928"/>
				<updated>2016-01-09T09:27:31Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: /* Backups */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== &amp;#039;&amp;#039;&amp;#039;Content&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
* [[SMS Links]]&lt;br /&gt;
* [[HowTo]]&lt;br /&gt;
* [[Shopping List]]&lt;br /&gt;
* [[Stereo Pair Images]]&lt;br /&gt;
* [[Haiku]]&lt;br /&gt;
* [[Architecture]]&lt;br /&gt;
* [[Software]]&lt;br /&gt;
* [[Hardware]]&lt;br /&gt;
* [[XCode]]&lt;br /&gt;
* [[Iguassu]]&lt;br /&gt;
* [[Bread]]&lt;br /&gt;
* [[Photos]]&lt;br /&gt;
* [[Places]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- * [http://maps.google.com.au/maps/ms?hl=en&amp;amp;ie=UTF8&amp;amp;msa=0&amp;amp;msid=109298058278878788801.000470f7be0dc41e24fec&amp;amp;ll=-33.447507,115.85915&amp;amp;spn=0.004069,0.008256&amp;amp;z=18 David &amp;amp; Denise&amp;#039;s House] --&amp;gt;&lt;br /&gt;
* [http://www.how-to-draw-and-paint.com/learn-to-draw.html Learn to Draw]&lt;br /&gt;
&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;Backups&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
* [[TV Guide]]&lt;br /&gt;
* [[Source Control]]&lt;br /&gt;
* [[Map App]]&lt;br /&gt;
* [[Workflow]]&lt;br /&gt;
* [[Config]]&lt;br /&gt;
* [[Upnp]]&lt;br /&gt;
* [[WeatherBrowse]]&lt;br /&gt;
* [[RestJsonExample]]&lt;br /&gt;
* [[ArcGISPushpinDragNDrop]]&lt;br /&gt;
* [[MumsFiles]]&lt;br /&gt;
* [[PhotoSphere]]&lt;br /&gt;
&lt;br /&gt;
{{Help:Contents}}&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=C&amp;diff=927</id>
		<title>C</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=C&amp;diff=927"/>
				<updated>2015-10-27T02:21:37Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: /* TimingScope */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://elegantcode.com/2009/07/03/wpf-multithreading-using-the-backgroundworker-and-reporting-the-progress-to-the-ui/ Using the BackgroundWorker and Reporting the Progress to the UI]&lt;br /&gt;
&lt;br /&gt;
===== Get Property Name via Lambda Expression =====&lt;br /&gt;
&lt;br /&gt;
To use it do something like this.PropertyName(()=&amp;gt;this.Property);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 using System;&lt;br /&gt;
 using System.Linq.Expressions;&lt;br /&gt;
 using System.Reflection;&lt;br /&gt;
 private string PropertyName&amp;lt;T&amp;gt;(Expression&amp;lt;Func&amp;lt;T&amp;gt;&amp;gt; property)&lt;br /&gt;
 {&lt;br /&gt;
     var propertyInfo = (property.Body as MemberExpression).Member as PropertyInfo;&lt;br /&gt;
     if (propertyInfo == null)&lt;br /&gt;
     {&lt;br /&gt;
       throw new ArgumentException(&amp;quot;The lambda expression &amp;#039;property&amp;#039; should point to a valid Property&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
     var propertyName = propertyInfo.Name;&lt;br /&gt;
     return propertyName;&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== SerializeToXml =====&lt;br /&gt;
&lt;br /&gt;
        using System.IO;&lt;br /&gt;
        using System.Xml;&lt;br /&gt;
        /// &amp;lt;summary&amp;gt;&lt;br /&gt;
        /// Serializes to XML.&lt;br /&gt;
        /// &amp;lt;/summary&amp;gt;&lt;br /&gt;
        /// &amp;lt;param name=&amp;quot;firstClassElement&amp;quot;&amp;gt;The first class element to serialize.&amp;lt;/param&amp;gt;&lt;br /&gt;
        /// &amp;lt;returns&amp;gt;The XML string that represents the passed first class element.&amp;lt;/returns&amp;gt;&lt;br /&gt;
        public virtual string SerializeToXml(FirstClassElementType firstClassElement)&lt;br /&gt;
        {&lt;br /&gt;
            string xmlData;&lt;br /&gt;
            var memoryStream = new MemoryStream();&lt;br /&gt;
            XmlTextWriter writer = null;&lt;br /&gt;
            try&lt;br /&gt;
            {&lt;br /&gt;
                writer = new XmlTextWriter(memoryStream, Encoding.Unicode)&lt;br /&gt;
                             {&lt;br /&gt;
                                 Formatting = Formatting.Indented,&lt;br /&gt;
                                 Indentation = 0&lt;br /&gt;
                             };&lt;br /&gt;
                var xmlSerializer = new XmlSerializer(typeof (FirstClassElementType));&lt;br /&gt;
                xmlSerializer.Serialize(writer, firstClassElement);&lt;br /&gt;
                writer.Flush();&lt;br /&gt;
            }&lt;br /&gt;
            finally&lt;br /&gt;
            {&lt;br /&gt;
                memoryStream.Seek(0, SeekOrigin.Begin);&lt;br /&gt;
                var textReader = new StreamReader(memoryStream);&lt;br /&gt;
                xmlData = textReader.ReadToEnd();&lt;br /&gt;
                textReader.Close();&lt;br /&gt;
                if (null != writer)&lt;br /&gt;
                    writer.Close();&lt;br /&gt;
            }&lt;br /&gt;
            return xmlData;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
===== TimingScope =====&lt;br /&gt;
Usage:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 using (TimingScope.StartNew(string.Format(&amp;quot;Extract Output XML: {0} {1}&amp;quot;, foo, bar), Logger)) {&lt;br /&gt;
 &lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Code:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 using System;&lt;br /&gt;
 using System.Diagnostics;&lt;br /&gt;
 namespace Common&lt;br /&gt;
 {&lt;br /&gt;
    public class TimingScope : IDisposable&lt;br /&gt;
    {&lt;br /&gt;
        private readonly log4net.ILog _logger;&lt;br /&gt;
        private readonly string _name;&lt;br /&gt;
        private readonly Stopwatch _timer;&lt;br /&gt;
 &lt;br /&gt;
        public TimingScope(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            _name = name;&lt;br /&gt;
            _logger = logger;&lt;br /&gt;
            _timer = new Stopwatch();&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public void Start()&lt;br /&gt;
        {&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} starting&amp;quot;, _name);&lt;br /&gt;
            _timer.Start();&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public static TimingScope StartNew(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            var scope = new TimingScope(name, logger);&lt;br /&gt;
            scope.Start();&lt;br /&gt;
            return scope;&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public static TimeSpan Time(string name, log4net.ILog logger, Action operation)&lt;br /&gt;
        {&lt;br /&gt;
            using (var timer = StartNew(name, logger))&lt;br /&gt;
            {&lt;br /&gt;
                operation();&lt;br /&gt;
                return timer.Elapsed;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public void Stop()&lt;br /&gt;
        {&lt;br /&gt;
            _timer.Stop();&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} completed in {1:0.000} s&amp;quot;, _name, _timer.ElapsedMilliseconds / 1000.0);&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public void Dispose()&lt;br /&gt;
        {&lt;br /&gt;
            Stop();&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public TimeSpan Elapsed&lt;br /&gt;
        {&lt;br /&gt;
            get { return _timer.Elapsed; }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=C&amp;diff=926</id>
		<title>C</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=C&amp;diff=926"/>
				<updated>2015-10-27T02:15:44Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: /* TimingScope */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://elegantcode.com/2009/07/03/wpf-multithreading-using-the-backgroundworker-and-reporting-the-progress-to-the-ui/ Using the BackgroundWorker and Reporting the Progress to the UI]&lt;br /&gt;
&lt;br /&gt;
===== Get Property Name via Lambda Expression =====&lt;br /&gt;
&lt;br /&gt;
To use it do something like this.PropertyName(()=&amp;gt;this.Property);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 using System;&lt;br /&gt;
 using System.Linq.Expressions;&lt;br /&gt;
 using System.Reflection;&lt;br /&gt;
 private string PropertyName&amp;lt;T&amp;gt;(Expression&amp;lt;Func&amp;lt;T&amp;gt;&amp;gt; property)&lt;br /&gt;
 {&lt;br /&gt;
     var propertyInfo = (property.Body as MemberExpression).Member as PropertyInfo;&lt;br /&gt;
     if (propertyInfo == null)&lt;br /&gt;
     {&lt;br /&gt;
       throw new ArgumentException(&amp;quot;The lambda expression &amp;#039;property&amp;#039; should point to a valid Property&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
     var propertyName = propertyInfo.Name;&lt;br /&gt;
     return propertyName;&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== SerializeToXml =====&lt;br /&gt;
&lt;br /&gt;
        using System.IO;&lt;br /&gt;
        using System.Xml;&lt;br /&gt;
        /// &amp;lt;summary&amp;gt;&lt;br /&gt;
        /// Serializes to XML.&lt;br /&gt;
        /// &amp;lt;/summary&amp;gt;&lt;br /&gt;
        /// &amp;lt;param name=&amp;quot;firstClassElement&amp;quot;&amp;gt;The first class element to serialize.&amp;lt;/param&amp;gt;&lt;br /&gt;
        /// &amp;lt;returns&amp;gt;The XML string that represents the passed first class element.&amp;lt;/returns&amp;gt;&lt;br /&gt;
        public virtual string SerializeToXml(FirstClassElementType firstClassElement)&lt;br /&gt;
        {&lt;br /&gt;
            string xmlData;&lt;br /&gt;
            var memoryStream = new MemoryStream();&lt;br /&gt;
            XmlTextWriter writer = null;&lt;br /&gt;
            try&lt;br /&gt;
            {&lt;br /&gt;
                writer = new XmlTextWriter(memoryStream, Encoding.Unicode)&lt;br /&gt;
                             {&lt;br /&gt;
                                 Formatting = Formatting.Indented,&lt;br /&gt;
                                 Indentation = 0&lt;br /&gt;
                             };&lt;br /&gt;
                var xmlSerializer = new XmlSerializer(typeof (FirstClassElementType));&lt;br /&gt;
                xmlSerializer.Serialize(writer, firstClassElement);&lt;br /&gt;
                writer.Flush();&lt;br /&gt;
            }&lt;br /&gt;
            finally&lt;br /&gt;
            {&lt;br /&gt;
                memoryStream.Seek(0, SeekOrigin.Begin);&lt;br /&gt;
                var textReader = new StreamReader(memoryStream);&lt;br /&gt;
                xmlData = textReader.ReadToEnd();&lt;br /&gt;
                textReader.Close();&lt;br /&gt;
                if (null != writer)&lt;br /&gt;
                    writer.Close();&lt;br /&gt;
            }&lt;br /&gt;
            return xmlData;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
===== TimingScope =====&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 using System;&lt;br /&gt;
 using System.Diagnostics;&lt;br /&gt;
 namespace Common&lt;br /&gt;
 {&lt;br /&gt;
    public class TimingScope : IDisposable&lt;br /&gt;
    {&lt;br /&gt;
        private readonly log4net.ILog _logger;&lt;br /&gt;
        private readonly string _name;&lt;br /&gt;
        private readonly Stopwatch _timer;&lt;br /&gt;
 &lt;br /&gt;
        public TimingScope(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            _name = name;&lt;br /&gt;
            _logger = logger;&lt;br /&gt;
            _timer = new Stopwatch();&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public void Start()&lt;br /&gt;
        {&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} starting&amp;quot;, _name);&lt;br /&gt;
            _timer.Start();&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public static TimingScope StartNew(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            var scope = new TimingScope(name, logger);&lt;br /&gt;
            scope.Start();&lt;br /&gt;
            return scope;&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public static TimeSpan Time(string name, log4net.ILog logger, Action operation)&lt;br /&gt;
        {&lt;br /&gt;
            using (var timer = StartNew(name, logger))&lt;br /&gt;
            {&lt;br /&gt;
                operation();&lt;br /&gt;
                return timer.Elapsed;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public void Stop()&lt;br /&gt;
        {&lt;br /&gt;
            _timer.Stop();&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} completed in {1:0.000} s&amp;quot;, _name, _timer.ElapsedMilliseconds / 1000.0);&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public void Dispose()&lt;br /&gt;
        {&lt;br /&gt;
            Stop();&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public TimeSpan Elapsed&lt;br /&gt;
        {&lt;br /&gt;
            get { return _timer.Elapsed; }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=C&amp;diff=925</id>
		<title>C</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=C&amp;diff=925"/>
				<updated>2015-10-27T02:15:09Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: /* TimingScope */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://elegantcode.com/2009/07/03/wpf-multithreading-using-the-backgroundworker-and-reporting-the-progress-to-the-ui/ Using the BackgroundWorker and Reporting the Progress to the UI]&lt;br /&gt;
&lt;br /&gt;
===== Get Property Name via Lambda Expression =====&lt;br /&gt;
&lt;br /&gt;
To use it do something like this.PropertyName(()=&amp;gt;this.Property);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 using System;&lt;br /&gt;
 using System.Linq.Expressions;&lt;br /&gt;
 using System.Reflection;&lt;br /&gt;
 private string PropertyName&amp;lt;T&amp;gt;(Expression&amp;lt;Func&amp;lt;T&amp;gt;&amp;gt; property)&lt;br /&gt;
 {&lt;br /&gt;
     var propertyInfo = (property.Body as MemberExpression).Member as PropertyInfo;&lt;br /&gt;
     if (propertyInfo == null)&lt;br /&gt;
     {&lt;br /&gt;
       throw new ArgumentException(&amp;quot;The lambda expression &amp;#039;property&amp;#039; should point to a valid Property&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
     var propertyName = propertyInfo.Name;&lt;br /&gt;
     return propertyName;&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== SerializeToXml =====&lt;br /&gt;
&lt;br /&gt;
        using System.IO;&lt;br /&gt;
        using System.Xml;&lt;br /&gt;
        /// &amp;lt;summary&amp;gt;&lt;br /&gt;
        /// Serializes to XML.&lt;br /&gt;
        /// &amp;lt;/summary&amp;gt;&lt;br /&gt;
        /// &amp;lt;param name=&amp;quot;firstClassElement&amp;quot;&amp;gt;The first class element to serialize.&amp;lt;/param&amp;gt;&lt;br /&gt;
        /// &amp;lt;returns&amp;gt;The XML string that represents the passed first class element.&amp;lt;/returns&amp;gt;&lt;br /&gt;
        public virtual string SerializeToXml(FirstClassElementType firstClassElement)&lt;br /&gt;
        {&lt;br /&gt;
            string xmlData;&lt;br /&gt;
            var memoryStream = new MemoryStream();&lt;br /&gt;
            XmlTextWriter writer = null;&lt;br /&gt;
            try&lt;br /&gt;
            {&lt;br /&gt;
                writer = new XmlTextWriter(memoryStream, Encoding.Unicode)&lt;br /&gt;
                             {&lt;br /&gt;
                                 Formatting = Formatting.Indented,&lt;br /&gt;
                                 Indentation = 0&lt;br /&gt;
                             };&lt;br /&gt;
                var xmlSerializer = new XmlSerializer(typeof (FirstClassElementType));&lt;br /&gt;
                xmlSerializer.Serialize(writer, firstClassElement);&lt;br /&gt;
                writer.Flush();&lt;br /&gt;
            }&lt;br /&gt;
            finally&lt;br /&gt;
            {&lt;br /&gt;
                memoryStream.Seek(0, SeekOrigin.Begin);&lt;br /&gt;
                var textReader = new StreamReader(memoryStream);&lt;br /&gt;
                xmlData = textReader.ReadToEnd();&lt;br /&gt;
                textReader.Close();&lt;br /&gt;
                if (null != writer)&lt;br /&gt;
                    writer.Close();&lt;br /&gt;
            }&lt;br /&gt;
            return xmlData;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
===== TimingScope =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 using System;&lt;br /&gt;
 using System.Diagnostics;&lt;br /&gt;
 namespace Common&lt;br /&gt;
 {&lt;br /&gt;
    public class TimingScope : IDisposable&lt;br /&gt;
    {&lt;br /&gt;
        private readonly log4net.ILog _logger;&lt;br /&gt;
        private readonly string _name;&lt;br /&gt;
        private readonly Stopwatch _timer;&lt;br /&gt;
 &lt;br /&gt;
        public TimingScope(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            _name = name;&lt;br /&gt;
            _logger = logger;&lt;br /&gt;
            _timer = new Stopwatch();&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public void Start()&lt;br /&gt;
        {&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} starting&amp;quot;, _name);&lt;br /&gt;
            _timer.Start();&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public static TimingScope StartNew(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            var scope = new TimingScope(name, logger);&lt;br /&gt;
            scope.Start();&lt;br /&gt;
            return scope;&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public static TimeSpan Time(string name, log4net.ILog logger, Action operation)&lt;br /&gt;
        {&lt;br /&gt;
            using (var timer = StartNew(name, logger))&lt;br /&gt;
            {&lt;br /&gt;
                operation();&lt;br /&gt;
                return timer.Elapsed;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public void Stop()&lt;br /&gt;
        {&lt;br /&gt;
            _timer.Stop();&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} completed in {1:0.000} s&amp;quot;, _name, _timer.ElapsedMilliseconds / 1000.0);&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        public void Dispose()&lt;br /&gt;
        {&lt;br /&gt;
            Stop();&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public TimeSpan Elapsed&lt;br /&gt;
        {&lt;br /&gt;
            get { return _timer.Elapsed; }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=C&amp;diff=924</id>
		<title>C</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=C&amp;diff=924"/>
				<updated>2015-10-27T02:14:02Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: /* TimingScope */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://elegantcode.com/2009/07/03/wpf-multithreading-using-the-backgroundworker-and-reporting-the-progress-to-the-ui/ Using the BackgroundWorker and Reporting the Progress to the UI]&lt;br /&gt;
&lt;br /&gt;
===== Get Property Name via Lambda Expression =====&lt;br /&gt;
&lt;br /&gt;
To use it do something like this.PropertyName(()=&amp;gt;this.Property);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 using System;&lt;br /&gt;
 using System.Linq.Expressions;&lt;br /&gt;
 using System.Reflection;&lt;br /&gt;
 private string PropertyName&amp;lt;T&amp;gt;(Expression&amp;lt;Func&amp;lt;T&amp;gt;&amp;gt; property)&lt;br /&gt;
 {&lt;br /&gt;
     var propertyInfo = (property.Body as MemberExpression).Member as PropertyInfo;&lt;br /&gt;
     if (propertyInfo == null)&lt;br /&gt;
     {&lt;br /&gt;
       throw new ArgumentException(&amp;quot;The lambda expression &amp;#039;property&amp;#039; should point to a valid Property&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
     var propertyName = propertyInfo.Name;&lt;br /&gt;
     return propertyName;&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== SerializeToXml =====&lt;br /&gt;
&lt;br /&gt;
        using System.IO;&lt;br /&gt;
        using System.Xml;&lt;br /&gt;
        /// &amp;lt;summary&amp;gt;&lt;br /&gt;
        /// Serializes to XML.&lt;br /&gt;
        /// &amp;lt;/summary&amp;gt;&lt;br /&gt;
        /// &amp;lt;param name=&amp;quot;firstClassElement&amp;quot;&amp;gt;The first class element to serialize.&amp;lt;/param&amp;gt;&lt;br /&gt;
        /// &amp;lt;returns&amp;gt;The XML string that represents the passed first class element.&amp;lt;/returns&amp;gt;&lt;br /&gt;
        public virtual string SerializeToXml(FirstClassElementType firstClassElement)&lt;br /&gt;
        {&lt;br /&gt;
            string xmlData;&lt;br /&gt;
            var memoryStream = new MemoryStream();&lt;br /&gt;
            XmlTextWriter writer = null;&lt;br /&gt;
            try&lt;br /&gt;
            {&lt;br /&gt;
                writer = new XmlTextWriter(memoryStream, Encoding.Unicode)&lt;br /&gt;
                             {&lt;br /&gt;
                                 Formatting = Formatting.Indented,&lt;br /&gt;
                                 Indentation = 0&lt;br /&gt;
                             };&lt;br /&gt;
                var xmlSerializer = new XmlSerializer(typeof (FirstClassElementType));&lt;br /&gt;
                xmlSerializer.Serialize(writer, firstClassElement);&lt;br /&gt;
                writer.Flush();&lt;br /&gt;
            }&lt;br /&gt;
            finally&lt;br /&gt;
            {&lt;br /&gt;
                memoryStream.Seek(0, SeekOrigin.Begin);&lt;br /&gt;
                var textReader = new StreamReader(memoryStream);&lt;br /&gt;
                xmlData = textReader.ReadToEnd();&lt;br /&gt;
                textReader.Close();&lt;br /&gt;
                if (null != writer)&lt;br /&gt;
                    writer.Close();&lt;br /&gt;
            }&lt;br /&gt;
            return xmlData;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
===== TimingScope =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
 namespace Common&lt;br /&gt;
 {&lt;br /&gt;
    public class TimingScope : IDisposable&lt;br /&gt;
    {&lt;br /&gt;
        private readonly log4net.ILog _logger;&lt;br /&gt;
        private readonly string _name;&lt;br /&gt;
        private readonly Stopwatch _timer;&lt;br /&gt;
&lt;br /&gt;
        public TimingScope(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            _name = name;&lt;br /&gt;
            _logger = logger;&lt;br /&gt;
            _timer = new Stopwatch();&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public void Start()&lt;br /&gt;
        {&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} starting&amp;quot;, _name);&lt;br /&gt;
            _timer.Start();&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public static TimingScope StartNew(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            var scope = new TimingScope(name, logger);&lt;br /&gt;
            scope.Start();&lt;br /&gt;
            return scope;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public static TimeSpan Time(string name, log4net.ILog logger, Action operation)&lt;br /&gt;
        {&lt;br /&gt;
            using (var timer = StartNew(name, logger))&lt;br /&gt;
            {&lt;br /&gt;
                operation();&lt;br /&gt;
                return timer.Elapsed;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public void Stop()&lt;br /&gt;
        {&lt;br /&gt;
            _timer.Stop();&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} completed in {1:0.000} s&amp;quot;, _name, _timer.ElapsedMilliseconds / 1000.0);&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public void Dispose()&lt;br /&gt;
        {&lt;br /&gt;
            Stop();&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public TimeSpan Elapsed&lt;br /&gt;
        {&lt;br /&gt;
            get { return _timer.Elapsed; }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=C&amp;diff=923</id>
		<title>C</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=C&amp;diff=923"/>
				<updated>2015-10-27T02:12:32Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://elegantcode.com/2009/07/03/wpf-multithreading-using-the-backgroundworker-and-reporting-the-progress-to-the-ui/ Using the BackgroundWorker and Reporting the Progress to the UI]&lt;br /&gt;
&lt;br /&gt;
===== Get Property Name via Lambda Expression =====&lt;br /&gt;
&lt;br /&gt;
To use it do something like this.PropertyName(()=&amp;gt;this.Property);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 using System;&lt;br /&gt;
 using System.Linq.Expressions;&lt;br /&gt;
 using System.Reflection;&lt;br /&gt;
 private string PropertyName&amp;lt;T&amp;gt;(Expression&amp;lt;Func&amp;lt;T&amp;gt;&amp;gt; property)&lt;br /&gt;
 {&lt;br /&gt;
     var propertyInfo = (property.Body as MemberExpression).Member as PropertyInfo;&lt;br /&gt;
     if (propertyInfo == null)&lt;br /&gt;
     {&lt;br /&gt;
       throw new ArgumentException(&amp;quot;The lambda expression &amp;#039;property&amp;#039; should point to a valid Property&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
     var propertyName = propertyInfo.Name;&lt;br /&gt;
     return propertyName;&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== SerializeToXml =====&lt;br /&gt;
&lt;br /&gt;
        using System.IO;&lt;br /&gt;
        using System.Xml;&lt;br /&gt;
        /// &amp;lt;summary&amp;gt;&lt;br /&gt;
        /// Serializes to XML.&lt;br /&gt;
        /// &amp;lt;/summary&amp;gt;&lt;br /&gt;
        /// &amp;lt;param name=&amp;quot;firstClassElement&amp;quot;&amp;gt;The first class element to serialize.&amp;lt;/param&amp;gt;&lt;br /&gt;
        /// &amp;lt;returns&amp;gt;The XML string that represents the passed first class element.&amp;lt;/returns&amp;gt;&lt;br /&gt;
        public virtual string SerializeToXml(FirstClassElementType firstClassElement)&lt;br /&gt;
        {&lt;br /&gt;
            string xmlData;&lt;br /&gt;
            var memoryStream = new MemoryStream();&lt;br /&gt;
            XmlTextWriter writer = null;&lt;br /&gt;
            try&lt;br /&gt;
            {&lt;br /&gt;
                writer = new XmlTextWriter(memoryStream, Encoding.Unicode)&lt;br /&gt;
                             {&lt;br /&gt;
                                 Formatting = Formatting.Indented,&lt;br /&gt;
                                 Indentation = 0&lt;br /&gt;
                             };&lt;br /&gt;
                var xmlSerializer = new XmlSerializer(typeof (FirstClassElementType));&lt;br /&gt;
                xmlSerializer.Serialize(writer, firstClassElement);&lt;br /&gt;
                writer.Flush();&lt;br /&gt;
            }&lt;br /&gt;
            finally&lt;br /&gt;
            {&lt;br /&gt;
                memoryStream.Seek(0, SeekOrigin.Begin);&lt;br /&gt;
                var textReader = new StreamReader(memoryStream);&lt;br /&gt;
                xmlData = textReader.ReadToEnd();&lt;br /&gt;
                textReader.Close();&lt;br /&gt;
                if (null != writer)&lt;br /&gt;
                    writer.Close();&lt;br /&gt;
            }&lt;br /&gt;
            return xmlData;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
===== TimingScope =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
namespace IrisServices.Common&lt;br /&gt;
{&lt;br /&gt;
    public class TimingScope : IDisposable&lt;br /&gt;
    {&lt;br /&gt;
        private readonly log4net.ILog _logger;&lt;br /&gt;
        private readonly string _name;&lt;br /&gt;
        private readonly Stopwatch _timer;&lt;br /&gt;
&lt;br /&gt;
        public TimingScope(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            _name = name;&lt;br /&gt;
            _logger = logger;&lt;br /&gt;
            _timer = new Stopwatch();&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public void Start()&lt;br /&gt;
        {&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} starting&amp;quot;, _name);&lt;br /&gt;
            _timer.Start();&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public static TimingScope StartNew(string name, log4net.ILog logger)&lt;br /&gt;
        {&lt;br /&gt;
            var scope = new TimingScope(name, logger);&lt;br /&gt;
            scope.Start();&lt;br /&gt;
            return scope;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public static TimeSpan Time(string name, log4net.ILog logger, Action operation)&lt;br /&gt;
        {&lt;br /&gt;
            using (var timer = StartNew(name, logger))&lt;br /&gt;
            {&lt;br /&gt;
                operation();&lt;br /&gt;
                return timer.Elapsed;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public void Stop()&lt;br /&gt;
        {&lt;br /&gt;
            _timer.Stop();&lt;br /&gt;
            _logger.DebugFormat(&amp;quot;{0} completed in {1:0.000} s&amp;quot;, _name, _timer.ElapsedMilliseconds / 1000.0);&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public void Dispose()&lt;br /&gt;
        {&lt;br /&gt;
            Stop();&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        public TimeSpan Elapsed&lt;br /&gt;
        {&lt;br /&gt;
            get { return _timer.Elapsed; }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Google_Maps&amp;diff=922</id>
		<title>Google Maps</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Google_Maps&amp;diff=922"/>
				<updated>2015-09-04T04:59:29Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: /* Excellent Google Maps API Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Excellent Google Maps API Links ==&lt;br /&gt;
* [http://www.mapstylr.com/map-style-editor/ http://www.mapstylr.com/map-style-editor/] MapStylr map style editor&lt;br /&gt;
* [http://koti.mbnet.fi/ojalesa/exam/index.html Google Maps API Examples and Test Pages] is probably the definitive set of Maps API examples.&lt;br /&gt;
* [http://www.bdcc.co.uk/Gmaps/BdccGmapBits.htm Google Maps Widgets from Bill Chadwick] has interesting overlays.&lt;br /&gt;
* [http://econym.org.uk/gmap/gevent.htm Google Maps API Tutorial] has [[a list of the accessible GEvent types]].&lt;br /&gt;
&lt;br /&gt;
== Show Google Maps Lat/Long ==&lt;br /&gt;
&lt;br /&gt;
To display the lat/long of the center of a Google Map, put the following into the browser location bar: &lt;br /&gt;
     &amp;lt;code&amp;gt;javascript:void(prompt(&amp;quot;&amp;quot;,gApplication.getMap().getCenter()));&amp;lt;/code&amp;gt;&lt;br /&gt;
This can also be bookmarked.&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Google_Maps&amp;diff=921</id>
		<title>Google Maps</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Google_Maps&amp;diff=921"/>
				<updated>2015-09-04T04:59:03Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Excellent Google Maps API Links ==&lt;br /&gt;
* [http://www.mapstylr.com/map-style-editor/] MapStylr map style editor&lt;br /&gt;
* [http://koti.mbnet.fi/ojalesa/exam/index.html Google Maps API Examples and Test Pages] is probably the definitive set of Maps API examples.&lt;br /&gt;
* [http://www.bdcc.co.uk/Gmaps/BdccGmapBits.htm Google Maps Widgets from Bill Chadwick] has interesting overlays.&lt;br /&gt;
* [http://econym.org.uk/gmap/gevent.htm Google Maps API Tutorial] has [[a list of the accessible GEvent types]].&lt;br /&gt;
&lt;br /&gt;
== Show Google Maps Lat/Long ==&lt;br /&gt;
&lt;br /&gt;
To display the lat/long of the center of a Google Map, put the following into the browser location bar: &lt;br /&gt;
     &amp;lt;code&amp;gt;javascript:void(prompt(&amp;quot;&amp;quot;,gApplication.getMap().getCenter()));&amp;lt;/code&amp;gt;&lt;br /&gt;
This can also be bookmarked.&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Newertech_Bluetooth_Keyboard&amp;diff=920</id>
		<title>Newertech Bluetooth Keyboard</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Newertech_Bluetooth_Keyboard&amp;diff=920"/>
				<updated>2015-09-03T10:48:33Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Newer Tech Bluetooth Keypad for Use on S3P&lt;br /&gt;
&lt;br /&gt;
By Nick O on August 16, 2015&lt;br /&gt;
&lt;br /&gt;
Verified Purchase&lt;br /&gt;
&lt;br /&gt;
I purchased this keypad because I wanted a Bluetooth option rather than a USB connection. The key pad works excellently on my Surface 3 Pro. Its thin perfect angle and the unit is very solid. Have been using heavily the past few days and its worked flawlessly, no lag in numbers being entered on spreadsheet. I had a problem at the beginning. Pairing worked as advertised. The keypad would not work as there is no NUM LOCK on the S3P. I called chatted with the Newer Tech Technical help line, and they told me that the driver was not good on the S3P and it would not work with Windows 10 as they had not tested with it. This consumed a better part of 30 minutes and the tech support in my opinion was far from good. There were long periods of no response to a simple question. I did an internet search and found out that there is a way to have the NUM LOCK set on the S3P.&lt;br /&gt;
&lt;br /&gt;
WIN + R&amp;lt;br&amp;gt;&lt;br /&gt;
Type OSK&amp;lt;br&amp;gt;&lt;br /&gt;
Enter OK&lt;br /&gt;
&lt;br /&gt;
On the screen will appear an On Screen Keyboard with a Number Key, touch or click the NUM Lock and you are in business. I am not a Techie an if I could spend 20 minutes doing a search the Newer Tech support should have known this right up front.&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Newertech_Bluetooth_Keyboard&amp;diff=919</id>
		<title>Newertech Bluetooth Keyboard</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Newertech_Bluetooth_Keyboard&amp;diff=919"/>
				<updated>2015-09-03T10:47:05Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Created page with &amp;quot;Newer Tech Bluetooth Keypad for Use on S3P  By Nick O on August 16, 2015  Verified Purchase  I purchased this keypad because I wanted a Bluetooth option rather than a USB co...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Newer Tech Bluetooth Keypad for Use on S3P&lt;br /&gt;
&lt;br /&gt;
By Nick O on August 16, 2015&lt;br /&gt;
&lt;br /&gt;
Verified Purchase&lt;br /&gt;
&lt;br /&gt;
I purchased this keypad because I wanted a Bluetooth option rather than a USB connection. The key pad works excellently on my Surface 3 Pro. Its thin perfect angle and the unit is very solid. Have been using heavily the past few days and its worked flawlessly, no lag in numbers being entered on spreadsheet. I had a problem at the beginning. Pairing worked as advertised. The keypad would not work as there is no NUM LOCK on the S3P. I called chatted with the Newer Tech Technical help line, and they told me that the driver was not good on the S3P and it would not work with Windows 10 as they had not tested with it. This consumed a better part of 30 minutes and the tech support in my opinion was far from good. There were long periods of no response to a simple question. I did an internet search and found out that there is a way to have the NUM LOCK set on the S3P.&lt;br /&gt;
&lt;br /&gt;
WIN + R&lt;br /&gt;
Type OSK&lt;br /&gt;
Enter OK&lt;br /&gt;
&lt;br /&gt;
On the screen will appear an On Screen Keyboard with a Number Key, touch or click the NUM Lock and you are in business. I am not a Techie an if I could spend 20 minutes doing a search the Newer Tech support should have known this right up front.&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Hardware&amp;diff=918</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Hardware&amp;diff=918"/>
				<updated>2015-09-03T10:46:29Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Bold text&amp;#039;&amp;#039;&amp;#039;* [[http://www.videohelp.com/dvdhacks/samsung-bd-e5500/11837 http://www.videohelp.com/dvdhacks/samsung-bd-e5500/11837]] [[Samsung BDE5500 Region code hack]]&lt;br /&gt;
* [[HP Proliant Microserver (HP-N36L)]]&lt;br /&gt;
* [[iPad]]&lt;br /&gt;
* [[http://www.nokia.com.au/A41175727 Nokia e71 phone]] is of interest, uses Symbian OS (9.2), has Bluetooth 2.0, 802.11 b/g&lt;br /&gt;
* [[http://www.zdnet.com.au/reviews/hardware/laptops/soa/ASUS-Eee-PC-1000/0,2000065761,339290680,00.htm Asus eeepc 1000]] 10&amp;quot; laptop looks interesting also&lt;br /&gt;
* [[Microsoft Digital Media Keyboard]]&lt;br /&gt;
* [[Edison Screw (ES) to Bayonet Cap (BC) Converters]]&lt;br /&gt;
* [[Newertech Bluetooth Keyboard]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=917</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=917"/>
				<updated>2014-12-03T06:36:18Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* LinqPad C# script to get detail of your own identity in AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 // using System.DirectoryServices;&lt;br /&gt;
 // using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 using(PrincipalContext ctx = new PrincipalContext(ContextType.Domain, &amp;quot;apac&amp;quot;))&lt;br /&gt;
     using(UserPrincipal usr = UserPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, &amp;quot;kurzejar&amp;quot;))&lt;br /&gt;
         usr.Dump();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* LinqPad C# script to get all users and groups in active directory AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 //using System.DirectoryServices;&lt;br /&gt;
 //using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 void Main()&lt;br /&gt;
 {&lt;br /&gt;
 //	const string adSearchContainer = &amp;quot;DC=apac,DC=birchmangroup,DC=com,DC=au&amp;quot;;&lt;br /&gt;
        const string adSearchContainer = &amp;quot;DC=mrwa,DC=wa,DC=gov,DC=au&amp;quot;;&lt;br /&gt;
        var users = FetchAllUsersFromActiveDirectory(adSearchContainer);&lt;br /&gt;
        var groups = FetchAllGroupsFromActiveDirectory(adSearchContainer);&lt;br /&gt;
        users.Dump(&amp;quot;Users&amp;quot;, true); // to datagrid&lt;br /&gt;
        groups.Dump(&amp;quot;Groups&amp;quot;, true); // to datagrid&lt;br /&gt;
 }&lt;br /&gt;
 // Define other methods and classes here&lt;br /&gt;
 public class User&lt;br /&gt;
    {&lt;br /&gt;
        public string Name { get; set; }&lt;br /&gt;
        public string Login { get; set; }&lt;br /&gt;
        public string DistinguishedName { get; set; }&lt;br /&gt;
    }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllUsersFromActiveDirectory(string searchContainer) {&lt;br /&gt;
    return FetchAllFromActiveDirectory(searchContainer, &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllGroupsFromActiveDirectory(string searchContainer) {&lt;br /&gt;
    return FetchAllFromActiveDirectory(searchContainer, &amp;quot;(&amp;amp;objectClass=group)&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllFromActiveDirectory(string searchContainer, string directorySearcherFilter)&lt;br /&gt;
   {&lt;br /&gt;
       try&lt;br /&gt;
       {&lt;br /&gt;
           List&amp;lt;User&amp;gt; result = new List&amp;lt;User&amp;gt;();&lt;br /&gt;
           //using (DirectoryEntry searchRoot = new DirectoryEntry()) // Search from root of current domain&lt;br /&gt;
           using (DirectoryEntry searchRoot = new DirectoryEntry(&amp;quot;LDAP://&amp;quot; + searchContainer))&lt;br /&gt;
           {&lt;br /&gt;
               DirectorySearcher ser = new DirectorySearcher(searchRoot)&lt;br /&gt;
                   {&lt;br /&gt;
 //                       Filter = &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;,&lt;br /&gt;
 //                       Filter = &amp;quot;(&amp;amp;objectClass=group)&amp;quot;,&lt;br /&gt;
                       Filter = directorySearcherFilter,&lt;br /&gt;
                       ReferralChasing = ReferralChasingOption.All,&lt;br /&gt;
                       PageSize = 1000,&lt;br /&gt;
                   };&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;Name&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;description&amp;quot;);&lt;br /&gt;
               using (SearchResultCollection searchResults = ser.FindAll())&lt;br /&gt;
               {&lt;br /&gt;
                   int count = searchResults.Count;&lt;br /&gt;
                   for (int i = 0; i &amp;lt; count; i++)&lt;br /&gt;
                   {&lt;br /&gt;
                       SearchResult searchResult = searchResults[i];&lt;br /&gt;
                       string name = GetSearchResultProperty(searchResult, &amp;quot;Name&amp;quot;);&lt;br /&gt;
                       string distinguishedName = GetSearchResultProperty(searchResult, &amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
                       string samAccount = GetSearchResultProperty(searchResult, &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
                       //var email = GetSearchResultProperty(searchResult, &amp;quot;mail&amp;quot;);&lt;br /&gt;
                       //var description = GetSearchResultProperty(searchResult, &amp;quot;description&amp;quot;);&lt;br /&gt;
                       result.Add(new User&lt;br /&gt;
                                      {&lt;br /&gt;
                                          Name = name,&lt;br /&gt;
                                          Login = samAccount,&lt;br /&gt;
                                          DistinguishedName = distinguishedName,&lt;br /&gt;
                                          //Email = email, &lt;br /&gt;
                                          //Role = description&lt;br /&gt;
                                      });&lt;br /&gt;
                   }&lt;br /&gt;
               }&lt;br /&gt;
               ser.Dispose();&lt;br /&gt;
           }&lt;br /&gt;
           return result;&lt;br /&gt;
       }&lt;br /&gt;
       catch (Exception ex)&lt;br /&gt;
       {&lt;br /&gt;
           string message = string.Format(&amp;quot;FetchAllUsersFromActiveDirectory() failed&amp;quot;);&lt;br /&gt;
 //                Log.Error(message, ex);&lt;br /&gt;
           throw;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
 private static string GetSearchResultProperty(SearchResult result, string name)&lt;br /&gt;
   {&lt;br /&gt;
       if (result.Properties.Contains(name))&lt;br /&gt;
       {&lt;br /&gt;
           var propertyCollection = result.Properties[name];&lt;br /&gt;
           if (propertyCollection.Count == 1 &amp;amp;&amp;amp; propertyCollection[0] != null)&lt;br /&gt;
           {&lt;br /&gt;
               return propertyCollection[0].ToString();&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
       return string.Empty;&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=916</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=916"/>
				<updated>2014-12-03T06:35:47Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* LinqPad C# script to get detail of your own identity in AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 // using System.DirectoryServices;&lt;br /&gt;
 // using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 using(PrincipalContext ctx = new PrincipalContext(ContextType.Domain, &amp;quot;apac&amp;quot;))&lt;br /&gt;
     using(UserPrincipal usr = UserPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, &amp;quot;kurzejar&amp;quot;))&lt;br /&gt;
         usr.Dump();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* LinqPad C# script to get all users and groups in active directory AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 //using System.DirectoryServices;&lt;br /&gt;
 //using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 void Main()&lt;br /&gt;
 {&lt;br /&gt;
 //	const string adSearchContainer = &amp;quot;DC=apac,DC=birchmangroup,DC=com,DC=au&amp;quot;;&lt;br /&gt;
        const string adSearchContainer = &amp;quot;DC=mrwa,DC=wa,DC=gov,DC=au&amp;quot;;&lt;br /&gt;
        var users = FetchAllUsersFromActiveDirectory(adSearchContainer);&lt;br /&gt;
        var groups = FetchAllGroupsFromActiveDirectory(adSearchContainer);&lt;br /&gt;
        users.Dump(&amp;quot;Users&amp;quot;, true); // to datagrid&lt;br /&gt;
        groups.Dump(&amp;quot;Groups&amp;quot;, true); // to datagrid&lt;br /&gt;
&lt;br /&gt;
 }&lt;br /&gt;
 // Define other methods and classes here&lt;br /&gt;
 public class User&lt;br /&gt;
    {&lt;br /&gt;
        public string Name { get; set; }&lt;br /&gt;
        public string Login { get; set; }&lt;br /&gt;
        public string DistinguishedName { get; set; }&lt;br /&gt;
    }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllUsersFromActiveDirectory(string searchContainer) {&lt;br /&gt;
    return FetchAllFromActiveDirectory(searchContainer, &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllGroupsFromActiveDirectory(string searchContainer) {&lt;br /&gt;
    return FetchAllFromActiveDirectory(searchContainer, &amp;quot;(&amp;amp;objectClass=group)&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllFromActiveDirectory(string searchContainer, string directorySearcherFilter)&lt;br /&gt;
   {&lt;br /&gt;
       try&lt;br /&gt;
       {&lt;br /&gt;
           List&amp;lt;User&amp;gt; result = new List&amp;lt;User&amp;gt;();&lt;br /&gt;
           //using (DirectoryEntry searchRoot = new DirectoryEntry()) // Search from root of current domain&lt;br /&gt;
           using (DirectoryEntry searchRoot = new DirectoryEntry(&amp;quot;LDAP://&amp;quot; + searchContainer))&lt;br /&gt;
           {&lt;br /&gt;
               DirectorySearcher ser = new DirectorySearcher(searchRoot)&lt;br /&gt;
                   {&lt;br /&gt;
 //                       Filter = &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;,&lt;br /&gt;
 //                       Filter = &amp;quot;(&amp;amp;objectClass=group)&amp;quot;,&lt;br /&gt;
                       Filter = directorySearcherFilter,&lt;br /&gt;
                       ReferralChasing = ReferralChasingOption.All,&lt;br /&gt;
                       PageSize = 1000,&lt;br /&gt;
                   };&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;Name&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;description&amp;quot;);&lt;br /&gt;
               using (SearchResultCollection searchResults = ser.FindAll())&lt;br /&gt;
               {&lt;br /&gt;
                   int count = searchResults.Count;&lt;br /&gt;
                   for (int i = 0; i &amp;lt; count; i++)&lt;br /&gt;
                   {&lt;br /&gt;
                       SearchResult searchResult = searchResults[i];&lt;br /&gt;
                       string name = GetSearchResultProperty(searchResult, &amp;quot;Name&amp;quot;);&lt;br /&gt;
                       string distinguishedName = GetSearchResultProperty(searchResult, &amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
                       string samAccount = GetSearchResultProperty(searchResult, &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
                       //var email = GetSearchResultProperty(searchResult, &amp;quot;mail&amp;quot;);&lt;br /&gt;
                       //var description = GetSearchResultProperty(searchResult, &amp;quot;description&amp;quot;);&lt;br /&gt;
                       result.Add(new User&lt;br /&gt;
                                      {&lt;br /&gt;
                                          Name = name,&lt;br /&gt;
                                          Login = samAccount,&lt;br /&gt;
                                          DistinguishedName = distinguishedName,&lt;br /&gt;
                                          //Email = email, &lt;br /&gt;
                                          //Role = description&lt;br /&gt;
                                      });&lt;br /&gt;
                   }&lt;br /&gt;
               }&lt;br /&gt;
               ser.Dispose();&lt;br /&gt;
           }&lt;br /&gt;
           return result;&lt;br /&gt;
       }&lt;br /&gt;
       catch (Exception ex)&lt;br /&gt;
       {&lt;br /&gt;
           string message = string.Format(&amp;quot;FetchAllUsersFromActiveDirectory() failed&amp;quot;);&lt;br /&gt;
 //                Log.Error(message, ex);&lt;br /&gt;
           throw;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
 private static string GetSearchResultProperty(SearchResult result, string name)&lt;br /&gt;
   {&lt;br /&gt;
       if (result.Properties.Contains(name))&lt;br /&gt;
       {&lt;br /&gt;
           var propertyCollection = result.Properties[name];&lt;br /&gt;
           if (propertyCollection.Count == 1 &amp;amp;&amp;amp; propertyCollection[0] != null)&lt;br /&gt;
           {&lt;br /&gt;
               return propertyCollection[0].ToString();&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
       return string.Empty;&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=915</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=915"/>
				<updated>2014-12-03T06:34:25Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* LinqPad C# script to get detail of your own identity in AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 // using System.DirectoryServices;&lt;br /&gt;
 // using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 using(PrincipalContext ctx = new PrincipalContext(ContextType.Domain, &amp;quot;apac&amp;quot;))&lt;br /&gt;
     using(UserPrincipal usr = UserPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, &amp;quot;kurzejar&amp;quot;))&lt;br /&gt;
         usr.Dump();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* LinqPad C# script to get all users and groups in active directory AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 //using System.DirectoryServices;&lt;br /&gt;
 //using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 void Main()&lt;br /&gt;
 {&lt;br /&gt;
 //	const string adSearchContainer = &amp;quot;DC=apac,DC=birchmangroup,DC=com,DC=au&amp;quot;;&lt;br /&gt;
        const string adSearchContainer = &amp;quot;DC=mrwa,DC=wa,DC=gov,DC=au&amp;quot;;&lt;br /&gt;
	var users = FetchAllUsersFromActiveDirectory(adSearchContainer);&lt;br /&gt;
	var groups = FetchAllGroupsFromActiveDirectory(adSearchContainer);&lt;br /&gt;
	users.Dump(&amp;quot;Users&amp;quot;, true); // to datagrid&lt;br /&gt;
	groups.Dump(&amp;quot;Groups&amp;quot;, true); // to datagrid&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
 // Define other methods and classes here&lt;br /&gt;
 public class User&lt;br /&gt;
    {&lt;br /&gt;
        public string Name { get; set; }&lt;br /&gt;
        public string Login { get; set; }&lt;br /&gt;
        public string DistinguishedName { get; set; }&lt;br /&gt;
    }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllUsersFromActiveDirectory(string searchContainer) {&lt;br /&gt;
    return FetchAllFromActiveDirectory(searchContainer, &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllGroupsFromActiveDirectory(string searchContainer) {&lt;br /&gt;
    return FetchAllFromActiveDirectory(searchContainer, &amp;quot;(&amp;amp;objectClass=group)&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllFromActiveDirectory(string searchContainer, string directorySearcherFilter)&lt;br /&gt;
   {&lt;br /&gt;
       try&lt;br /&gt;
       {&lt;br /&gt;
           List&amp;lt;User&amp;gt; result = new List&amp;lt;User&amp;gt;();&lt;br /&gt;
           //using (DirectoryEntry searchRoot = new DirectoryEntry()) // Search from root of current domain&lt;br /&gt;
           using (DirectoryEntry searchRoot = new DirectoryEntry(&amp;quot;LDAP://&amp;quot; + searchContainer))&lt;br /&gt;
           {&lt;br /&gt;
               DirectorySearcher ser = new DirectorySearcher(searchRoot)&lt;br /&gt;
                   {&lt;br /&gt;
 //                       Filter = &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;,&lt;br /&gt;
 //                       Filter = &amp;quot;(&amp;amp;objectClass=group)&amp;quot;,&lt;br /&gt;
                       Filter = directorySearcherFilter,&lt;br /&gt;
                       ReferralChasing = ReferralChasingOption.All,&lt;br /&gt;
                       PageSize = 1000,&lt;br /&gt;
                   };&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;Name&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;description&amp;quot;);&lt;br /&gt;
               using (SearchResultCollection searchResults = ser.FindAll())&lt;br /&gt;
               {&lt;br /&gt;
                   int count = searchResults.Count;&lt;br /&gt;
                   for (int i = 0; i &amp;lt; count; i++)&lt;br /&gt;
                   {&lt;br /&gt;
                       SearchResult searchResult = searchResults[i];&lt;br /&gt;
                       string name = GetSearchResultProperty(searchResult, &amp;quot;Name&amp;quot;);&lt;br /&gt;
                       string distinguishedName = GetSearchResultProperty(searchResult, &amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
                       string samAccount = GetSearchResultProperty(searchResult, &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
                       //var email = GetSearchResultProperty(searchResult, &amp;quot;mail&amp;quot;);&lt;br /&gt;
                       //var description = GetSearchResultProperty(searchResult, &amp;quot;description&amp;quot;);&lt;br /&gt;
                       result.Add(new User&lt;br /&gt;
                                      {&lt;br /&gt;
                                          Name = name,&lt;br /&gt;
                                          Login = samAccount,&lt;br /&gt;
                                          DistinguishedName = distinguishedName,&lt;br /&gt;
                                          //Email = email, &lt;br /&gt;
                                          //Role = description&lt;br /&gt;
                                      });&lt;br /&gt;
                   }&lt;br /&gt;
               }&lt;br /&gt;
               ser.Dispose();&lt;br /&gt;
           }&lt;br /&gt;
           return result;&lt;br /&gt;
       }&lt;br /&gt;
       catch (Exception ex)&lt;br /&gt;
       {&lt;br /&gt;
           string message = string.Format(&amp;quot;FetchAllUsersFromActiveDirectory() failed&amp;quot;);&lt;br /&gt;
 //                Log.Error(message, ex);&lt;br /&gt;
           throw;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
 private static string GetSearchResultProperty(SearchResult result, string name)&lt;br /&gt;
   {&lt;br /&gt;
       if (result.Properties.Contains(name))&lt;br /&gt;
       {&lt;br /&gt;
           var propertyCollection = result.Properties[name];&lt;br /&gt;
           if (propertyCollection.Count == 1 &amp;amp;&amp;amp; propertyCollection[0] != null)&lt;br /&gt;
           {&lt;br /&gt;
               return propertyCollection[0].ToString();&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
       return string.Empty;&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=914</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=914"/>
				<updated>2014-12-03T06:32:15Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* LinqPad C# script to get detail of your own identity in AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 // using System.DirectoryServices;&lt;br /&gt;
 // using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 using(PrincipalContext ctx = new PrincipalContext(ContextType.Domain, &amp;quot;apac&amp;quot;))&lt;br /&gt;
     using(UserPrincipal usr = UserPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, &amp;quot;kurzejar&amp;quot;))&lt;br /&gt;
         usr.Dump();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* LinqPad C# script to get all users and groups in active directory AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 //using System.DirectoryServices;&lt;br /&gt;
 //using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 void Main()&lt;br /&gt;
 {&lt;br /&gt;
 //	const string adSearchContainer = &amp;quot;DC=apac,DC=birchmangroup,DC=com,DC=au&amp;quot;;&lt;br /&gt;
	const string adSearchContainer = &amp;quot;DC=mrwa,DC=wa,DC=gov,DC=au&amp;quot;;&lt;br /&gt;
	&lt;br /&gt;
	var users = FetchAllUsersFromActiveDirectory(adSearchContainer);&lt;br /&gt;
	var groups = FetchAllGroupsFromActiveDirectory(adSearchContainer);&lt;br /&gt;
	users.Dump(&amp;quot;Users&amp;quot;, true); // to datagrid&lt;br /&gt;
	groups.Dump(&amp;quot;Groups&amp;quot;, true); // to datagrid&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
 // Define other methods and classes here&lt;br /&gt;
 public class User&lt;br /&gt;
    {&lt;br /&gt;
        public string Name { get; set; }&lt;br /&gt;
        public string Login { get; set; }&lt;br /&gt;
        public string DistinguishedName { get; set; }&lt;br /&gt;
    }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllUsersFromActiveDirectory(string searchContainer) {&lt;br /&gt;
	return FetchAllFromActiveDirectory(searchContainer, &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllGroupsFromActiveDirectory(string searchContainer) {&lt;br /&gt;
	return FetchAllFromActiveDirectory(searchContainer, &amp;quot;(&amp;amp;objectClass=group)&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllFromActiveDirectory(string searchContainer, string directorySearcherFilter)&lt;br /&gt;
   {&lt;br /&gt;
       try&lt;br /&gt;
       {&lt;br /&gt;
           List&amp;lt;User&amp;gt; result = new List&amp;lt;User&amp;gt;();&lt;br /&gt;
           //using (DirectoryEntry searchRoot = new DirectoryEntry()) // Search from root of current domain&lt;br /&gt;
           using (DirectoryEntry searchRoot = new DirectoryEntry(&amp;quot;LDAP://&amp;quot; + searchContainer))&lt;br /&gt;
           {&lt;br /&gt;
               DirectorySearcher ser = new DirectorySearcher(searchRoot)&lt;br /&gt;
                   {&lt;br /&gt;
 //                       Filter = &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;,&lt;br /&gt;
 //                       Filter = &amp;quot;(&amp;amp;objectClass=group)&amp;quot;,&lt;br /&gt;
                       Filter = directorySearcherFilter,&lt;br /&gt;
                       ReferralChasing = ReferralChasingOption.All,&lt;br /&gt;
                       PageSize = 1000,&lt;br /&gt;
                   };&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;Name&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;description&amp;quot;);&lt;br /&gt;
               using (SearchResultCollection searchResults = ser.FindAll())&lt;br /&gt;
               {&lt;br /&gt;
                   int count = searchResults.Count;&lt;br /&gt;
                   for (int i = 0; i &amp;lt; count; i++)&lt;br /&gt;
                   {&lt;br /&gt;
                       SearchResult searchResult = searchResults[i];&lt;br /&gt;
                       string name = GetSearchResultProperty(searchResult, &amp;quot;Name&amp;quot;);&lt;br /&gt;
                       string distinguishedName = GetSearchResultProperty(searchResult, &amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
                       string samAccount = GetSearchResultProperty(searchResult, &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
                       //var email = GetSearchResultProperty(searchResult, &amp;quot;mail&amp;quot;);&lt;br /&gt;
                       //var description = GetSearchResultProperty(searchResult, &amp;quot;description&amp;quot;);&lt;br /&gt;
                       result.Add(new User&lt;br /&gt;
                                      {&lt;br /&gt;
                                          Name = name,&lt;br /&gt;
                                          Login = samAccount,&lt;br /&gt;
                                          DistinguishedName = distinguishedName,&lt;br /&gt;
                                          //Email = email, &lt;br /&gt;
                                          //Role = description&lt;br /&gt;
                                      });&lt;br /&gt;
                   }&lt;br /&gt;
               }&lt;br /&gt;
			   ser.Dispose();&lt;br /&gt;
           }&lt;br /&gt;
           return result;&lt;br /&gt;
       }&lt;br /&gt;
       catch (Exception ex)&lt;br /&gt;
       {&lt;br /&gt;
           string message = string.Format(&amp;quot;FetchAllUsersFromActiveDirectory() failed&amp;quot;);&lt;br /&gt;
 //                Log.Error(message, ex);&lt;br /&gt;
           throw;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
 private static string GetSearchResultProperty(SearchResult result, string name)&lt;br /&gt;
   {&lt;br /&gt;
       if (result.Properties.Contains(name))&lt;br /&gt;
       {&lt;br /&gt;
           var propertyCollection = result.Properties[name];&lt;br /&gt;
           if (propertyCollection.Count == 1 &amp;amp;&amp;amp; propertyCollection[0] != null)&lt;br /&gt;
           {&lt;br /&gt;
               return propertyCollection[0].ToString();&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
       return string.Empty;&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=913</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=913"/>
				<updated>2014-12-03T06:08:30Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* LinqPad C# script to get detail of your own identity in AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 // using System.DirectoryServices;&lt;br /&gt;
 // using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 using(PrincipalContext ctx = new PrincipalContext(ContextType.Domain, &amp;quot;apac&amp;quot;))&lt;br /&gt;
     using(UserPrincipal usr = UserPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, &amp;quot;kurzejar&amp;quot;))&lt;br /&gt;
         usr.Dump();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* LinqPad C# script to get all users in active directory AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 //using System.DirectoryServices;&lt;br /&gt;
 //using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 void Main()&lt;br /&gt;
 {&lt;br /&gt;
        const string allAdUsersSearchContainer = &amp;quot;OU=UsersMarch 2005,OU=Users,OU=Beacon,DC=beacon,DC=com,DC=au&amp;quot;;&lt;br /&gt;
        var users = FetchAllUsersFromActiveDirectory(allAdUsersSearchContainer);&lt;br /&gt;
        users.Dump();&lt;br /&gt;
 }&lt;br /&gt;
 // Define other methods and classes here&lt;br /&gt;
 public class User&lt;br /&gt;
    {&lt;br /&gt;
        public string Name { get; set; }&lt;br /&gt;
        public string Login { get; set; }&lt;br /&gt;
        public string DistinguishedName { get; set; }&lt;br /&gt;
    }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllUsersFromActiveDirectory(string allUsersSearchContainer)&lt;br /&gt;
   {&lt;br /&gt;
       try&lt;br /&gt;
       {&lt;br /&gt;
           List&amp;lt;User&amp;gt; result = new List&amp;lt;User&amp;gt;();&lt;br /&gt;
           //using (DirectoryEntry searchRoot = new DirectoryEntry()) // Search from root of current domain&lt;br /&gt;
           using (DirectoryEntry searchRoot = new DirectoryEntry(&amp;quot;LDAP://&amp;quot; + allUsersSearchContainer))&lt;br /&gt;
           {&lt;br /&gt;
               DirectorySearcher ser = new DirectorySearcher(searchRoot)&lt;br /&gt;
                   {&lt;br /&gt;
                       Filter = &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;,&lt;br /&gt;
                       ReferralChasing = ReferralChasingOption.All,&lt;br /&gt;
                       PageSize = 1000,&lt;br /&gt;
                   };&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;Name&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;description&amp;quot;);&lt;br /&gt;
               using (SearchResultCollection searchResults = ser.FindAll())&lt;br /&gt;
               {&lt;br /&gt;
                   int count = searchResults.Count;&lt;br /&gt;
                   for (int i = 0; i &amp;lt; count; i++)&lt;br /&gt;
                   {&lt;br /&gt;
                       SearchResult searchResult = searchResults[i];&lt;br /&gt;
                       string name = GetSearchResultProperty(searchResult, &amp;quot;Name&amp;quot;);&lt;br /&gt;
                       string distinguishedName = GetSearchResultProperty(searchResult, &amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
                       string samAccount = GetSearchResultProperty(searchResult, &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
                       //var email = GetSearchResultProperty(searchResult, &amp;quot;mail&amp;quot;);&lt;br /&gt;
                       //var description = GetSearchResultProperty(searchResult, &amp;quot;description&amp;quot;);&lt;br /&gt;
                       result.Add(new User&lt;br /&gt;
                                      {&lt;br /&gt;
                                          Name = name,&lt;br /&gt;
                                          Login = samAccount,&lt;br /&gt;
                                          DistinguishedName = distinguishedName,&lt;br /&gt;
                                          //Email = email, &lt;br /&gt;
                                          //Role = description&lt;br /&gt;
                                      });&lt;br /&gt;
                   }&lt;br /&gt;
               }&lt;br /&gt;
           }&lt;br /&gt;
           return result;&lt;br /&gt;
       }&lt;br /&gt;
       catch (Exception ex)&lt;br /&gt;
       {&lt;br /&gt;
           string message = string.Format(&amp;quot;FetchAllUsersFromActiveDirectory() failed&amp;quot;);&lt;br /&gt;
 //                Log.Error(message, ex);&lt;br /&gt;
           throw;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
 private static string GetSearchResultProperty(SearchResult result, string name)&lt;br /&gt;
   {&lt;br /&gt;
       if (result.Properties.Contains(name))&lt;br /&gt;
       {&lt;br /&gt;
           var propertyCollection = result.Properties[name];&lt;br /&gt;
           if (propertyCollection.Count == 1 &amp;amp;&amp;amp; propertyCollection[0] != null)&lt;br /&gt;
           {&lt;br /&gt;
               return propertyCollection[0].ToString();&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
       return string.Empty;&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=912</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=912"/>
				<updated>2014-12-03T01:23:55Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* LinqPad C# script to get detail of your won identity in AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 // using System.DirectoryServices;&lt;br /&gt;
 // using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 using(PrincipalContext ctx = new PrincipalContext(ContextType.Domain, &amp;quot;apac&amp;quot;))&lt;br /&gt;
     using(UserPrincipal usr = UserPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, &amp;quot;kurzejar&amp;quot;))&lt;br /&gt;
         usr.Dump();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* LinqPad C# script to get all users in active directory AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 //using System.DirectoryServices;&lt;br /&gt;
 //using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 void Main()&lt;br /&gt;
 {&lt;br /&gt;
        const string allAdUsersSearchContainer = &amp;quot;OU=UsersMarch 2005,OU=Users,OU=Beacon,DC=beacon,DC=com,DC=au&amp;quot;;&lt;br /&gt;
        var users = FetchAllUsersFromActiveDirectory(allAdUsersSearchContainer);&lt;br /&gt;
        users.Dump();&lt;br /&gt;
 }&lt;br /&gt;
 // Define other methods and classes here&lt;br /&gt;
 public class User&lt;br /&gt;
    {&lt;br /&gt;
        public string Name { get; set; }&lt;br /&gt;
        public string Login { get; set; }&lt;br /&gt;
        public string DistinguishedName { get; set; }&lt;br /&gt;
    }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllUsersFromActiveDirectory(string allUsersSearchContainer)&lt;br /&gt;
   {&lt;br /&gt;
       try&lt;br /&gt;
       {&lt;br /&gt;
           List&amp;lt;User&amp;gt; result = new List&amp;lt;User&amp;gt;();&lt;br /&gt;
           //using (DirectoryEntry searchRoot = new DirectoryEntry()) // Search from root of current domain&lt;br /&gt;
           using (DirectoryEntry searchRoot = new DirectoryEntry(&amp;quot;LDAP://&amp;quot; + allUsersSearchContainer))&lt;br /&gt;
           {&lt;br /&gt;
               DirectorySearcher ser = new DirectorySearcher(searchRoot)&lt;br /&gt;
                   {&lt;br /&gt;
                       Filter = &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;,&lt;br /&gt;
                       ReferralChasing = ReferralChasingOption.All&lt;br /&gt;
                   };&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;Name&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;description&amp;quot;);&lt;br /&gt;
               using (SearchResultCollection searchResults = ser.FindAll())&lt;br /&gt;
               {&lt;br /&gt;
                   int count = searchResults.Count;&lt;br /&gt;
                   for (int i = 0; i &amp;lt; count; i++)&lt;br /&gt;
                   {&lt;br /&gt;
                       SearchResult searchResult = searchResults[i];&lt;br /&gt;
                       string name = GetSearchResultProperty(searchResult, &amp;quot;Name&amp;quot;);&lt;br /&gt;
                       string distinguishedName = GetSearchResultProperty(searchResult, &amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
                       string samAccount = GetSearchResultProperty(searchResult, &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
                       //var email = GetSearchResultProperty(searchResult, &amp;quot;mail&amp;quot;);&lt;br /&gt;
                       //var description = GetSearchResultProperty(searchResult, &amp;quot;description&amp;quot;);&lt;br /&gt;
                       result.Add(new User&lt;br /&gt;
                                      {&lt;br /&gt;
                                          Name = name,&lt;br /&gt;
                                          Login = samAccount,&lt;br /&gt;
                                          DistinguishedName = distinguishedName,&lt;br /&gt;
                                          //Email = email, &lt;br /&gt;
                                          //Role = description&lt;br /&gt;
                                      });&lt;br /&gt;
                   }&lt;br /&gt;
               }&lt;br /&gt;
           }&lt;br /&gt;
           return result;&lt;br /&gt;
       }&lt;br /&gt;
       catch (Exception ex)&lt;br /&gt;
       {&lt;br /&gt;
           string message = string.Format(&amp;quot;FetchAllUsersFromActiveDirectory() failed&amp;quot;);&lt;br /&gt;
 //                Log.Error(message, ex);&lt;br /&gt;
           throw;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
 private static string GetSearchResultProperty(SearchResult result, string name)&lt;br /&gt;
   {&lt;br /&gt;
       if (result.Properties.Contains(name))&lt;br /&gt;
       {&lt;br /&gt;
           var propertyCollection = result.Properties[name];&lt;br /&gt;
           if (propertyCollection.Count == 1 &amp;amp;&amp;amp; propertyCollection[0] != null)&lt;br /&gt;
           {&lt;br /&gt;
               return propertyCollection[0].ToString();&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
       return string.Empty;&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=911</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=911"/>
				<updated>2014-12-02T05:14:43Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;LinqPad C# script to get all users in active directory AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 //using System.DirectoryServices;&lt;br /&gt;
 //using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 void Main()&lt;br /&gt;
 {&lt;br /&gt;
        const string allAdUsersSearchContainer = &amp;quot;OU=UsersMarch 2005,OU=Users,OU=Beacon,DC=beacon,DC=com,DC=au&amp;quot;;&lt;br /&gt;
        var users = FetchAllUsersFromActiveDirectory(allAdUsersSearchContainer);&lt;br /&gt;
        users.Dump();&lt;br /&gt;
 }&lt;br /&gt;
 // Define other methods and classes here&lt;br /&gt;
 public class User&lt;br /&gt;
    {&lt;br /&gt;
        public string Name { get; set; }&lt;br /&gt;
        public string Login { get; set; }&lt;br /&gt;
        public string DistinguishedName { get; set; }&lt;br /&gt;
    }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllUsersFromActiveDirectory(string allUsersSearchContainer)&lt;br /&gt;
   {&lt;br /&gt;
       try&lt;br /&gt;
       {&lt;br /&gt;
           List&amp;lt;User&amp;gt; result = new List&amp;lt;User&amp;gt;();&lt;br /&gt;
           //using (DirectoryEntry searchRoot = new DirectoryEntry()) // Search from root of current domain&lt;br /&gt;
           using (DirectoryEntry searchRoot = new DirectoryEntry(&amp;quot;LDAP://&amp;quot; + allUsersSearchContainer))&lt;br /&gt;
           {&lt;br /&gt;
               DirectorySearcher ser = new DirectorySearcher(searchRoot)&lt;br /&gt;
                   {&lt;br /&gt;
                       Filter = &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;,&lt;br /&gt;
                       ReferralChasing = ReferralChasingOption.All&lt;br /&gt;
                   };&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;Name&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;description&amp;quot;);&lt;br /&gt;
               using (SearchResultCollection searchResults = ser.FindAll())&lt;br /&gt;
               {&lt;br /&gt;
                   int count = searchResults.Count;&lt;br /&gt;
                   for (int i = 0; i &amp;lt; count; i++)&lt;br /&gt;
                   {&lt;br /&gt;
                       SearchResult searchResult = searchResults[i];&lt;br /&gt;
                       string name = GetSearchResultProperty(searchResult, &amp;quot;Name&amp;quot;);&lt;br /&gt;
                       string distinguishedName = GetSearchResultProperty(searchResult, &amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
                       string samAccount = GetSearchResultProperty(searchResult, &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
                       //var email = GetSearchResultProperty(searchResult, &amp;quot;mail&amp;quot;);&lt;br /&gt;
                       //var description = GetSearchResultProperty(searchResult, &amp;quot;description&amp;quot;);&lt;br /&gt;
                       result.Add(new User&lt;br /&gt;
                                      {&lt;br /&gt;
                                          Name = name,&lt;br /&gt;
                                          Login = samAccount,&lt;br /&gt;
                                          DistinguishedName = distinguishedName,&lt;br /&gt;
                                          //Email = email, &lt;br /&gt;
                                          //Role = description&lt;br /&gt;
                                      });&lt;br /&gt;
                   }&lt;br /&gt;
               }&lt;br /&gt;
           }&lt;br /&gt;
           return result;&lt;br /&gt;
       }&lt;br /&gt;
       catch (Exception ex)&lt;br /&gt;
       {&lt;br /&gt;
           string message = string.Format(&amp;quot;FetchAllUsersFromActiveDirectory() failed&amp;quot;);&lt;br /&gt;
 //                Log.Error(message, ex);&lt;br /&gt;
           throw;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
 private static string GetSearchResultProperty(SearchResult result, string name)&lt;br /&gt;
   {&lt;br /&gt;
       if (result.Properties.Contains(name))&lt;br /&gt;
       {&lt;br /&gt;
           var propertyCollection = result.Properties[name];&lt;br /&gt;
           if (propertyCollection.Count == 1 &amp;amp;&amp;amp; propertyCollection[0] != null)&lt;br /&gt;
           {&lt;br /&gt;
               return propertyCollection[0].ToString();&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
       return string.Empty;&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=910</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=910"/>
				<updated>2014-12-02T05:02:41Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;LinqPad script to get all users in active directory AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 //using System.DirectoryServices;&lt;br /&gt;
 //using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 void Main()&lt;br /&gt;
 {&lt;br /&gt;
        const string allAdUsersSearchContainer = &amp;quot;OU=UsersMarch 2005,OU=Users,OU=Beacon,DC=beacon,DC=com,DC=au&amp;quot;;&lt;br /&gt;
        var users = FetchAllUsersFromActiveDirectory(allAdUsersSearchContainer);&lt;br /&gt;
        users.Dump();&lt;br /&gt;
 }&lt;br /&gt;
 // Define other methods and classes here&lt;br /&gt;
 public class User&lt;br /&gt;
    {&lt;br /&gt;
        public string Name { get; set; }&lt;br /&gt;
        public string Login { get; set; }&lt;br /&gt;
        public string DistinguishedName { get; set; }&lt;br /&gt;
    }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllUsersFromActiveDirectory(string allUsersSearchContainer)&lt;br /&gt;
   {&lt;br /&gt;
       try&lt;br /&gt;
       {&lt;br /&gt;
           List&amp;lt;User&amp;gt; result = new List&amp;lt;User&amp;gt;();&lt;br /&gt;
           //using (DirectoryEntry searchRoot = new DirectoryEntry()) // Search from root of current domain&lt;br /&gt;
           using (DirectoryEntry searchRoot = new DirectoryEntry(&amp;quot;LDAP://&amp;quot; + allUsersSearchContainer))&lt;br /&gt;
           {&lt;br /&gt;
               DirectorySearcher ser = new DirectorySearcher(searchRoot)&lt;br /&gt;
                   {&lt;br /&gt;
                       Filter = &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;,&lt;br /&gt;
                       ReferralChasing = ReferralChasingOption.All&lt;br /&gt;
                   };&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;Name&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;description&amp;quot;);&lt;br /&gt;
               using (SearchResultCollection searchResults = ser.FindAll())&lt;br /&gt;
               {&lt;br /&gt;
                   int count = searchResults.Count;&lt;br /&gt;
                   for (int i = 0; i &amp;lt; count; i++)&lt;br /&gt;
                   {&lt;br /&gt;
                       SearchResult searchResult = searchResults[i];&lt;br /&gt;
                       string name = GetSearchResultProperty(searchResult, &amp;quot;Name&amp;quot;);&lt;br /&gt;
                       string distinguishedName = GetSearchResultProperty(searchResult, &amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
                       string samAccount = GetSearchResultProperty(searchResult, &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
                       //var email = GetSearchResultProperty(searchResult, &amp;quot;mail&amp;quot;);&lt;br /&gt;
                       //var description = GetSearchResultProperty(searchResult, &amp;quot;description&amp;quot;);&lt;br /&gt;
                       result.Add(new User&lt;br /&gt;
                                      {&lt;br /&gt;
                                          Name = name,&lt;br /&gt;
                                          Login = samAccount,&lt;br /&gt;
                                          DistinguishedName = distinguishedName,&lt;br /&gt;
                                          //Email = email, &lt;br /&gt;
                                          //Role = description&lt;br /&gt;
                                      });&lt;br /&gt;
                   }&lt;br /&gt;
               }&lt;br /&gt;
           }&lt;br /&gt;
           return result;&lt;br /&gt;
       }&lt;br /&gt;
       catch (Exception ex)&lt;br /&gt;
       {&lt;br /&gt;
           string message = string.Format(&amp;quot;FetchAllUsersFromActiveDirectory() failed&amp;quot;);&lt;br /&gt;
 //                Log.Error(message, ex);&lt;br /&gt;
           throw;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
 private static string GetSearchResultProperty(SearchResult result, string name)&lt;br /&gt;
   {&lt;br /&gt;
       if (result.Properties.Contains(name))&lt;br /&gt;
       {&lt;br /&gt;
           var propertyCollection = result.Properties[name];&lt;br /&gt;
           if (propertyCollection.Count == 1 &amp;amp;&amp;amp; propertyCollection[0] != null)&lt;br /&gt;
           {&lt;br /&gt;
               return propertyCollection[0].ToString();&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
       return string.Empty;&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=909</id>
		<title>Active Directory</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Active_Directory&amp;diff=909"/>
				<updated>2014-12-02T05:02:00Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Created page with &amp;quot;LinqPad script to get all users in active directory AD:  &amp;lt;code&amp;gt;  //using System.DirectoryServices;  //using System.DirectoryServices.AccountManagement;  void Main()  {         co...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;LinqPad script to get all users in active directory AD:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 //using System.DirectoryServices;&lt;br /&gt;
 //using System.DirectoryServices.AccountManagement;&lt;br /&gt;
 void Main()&lt;br /&gt;
 {&lt;br /&gt;
        const string allAdUsersSearchContainer = &amp;quot;OU=UsersMarch 2005,OU=Users,OU=Beacon,DC=beacon,DC=com,DC=au&amp;quot;;&lt;br /&gt;
        var users = FetchAllUsersFromActiveDirectory(allAdUsersSearchContainer);&lt;br /&gt;
        users.Dump();&lt;br /&gt;
 }&lt;br /&gt;
 // Define other methods and classes here&lt;br /&gt;
 public class User&lt;br /&gt;
    {&lt;br /&gt;
        public string Name { get; set; }&lt;br /&gt;
        public string Login { get; set; }&lt;br /&gt;
        public string DistinguishedName { get; set; }&lt;br /&gt;
    }&lt;br /&gt;
 private static IEnumerable&amp;lt;User&amp;gt; FetchAllUsersFromActiveDirectory(string allUsersSearchContainer)&lt;br /&gt;
   {&lt;br /&gt;
       try&lt;br /&gt;
       {&lt;br /&gt;
           List&amp;lt;User&amp;gt; result = new List&amp;lt;User&amp;gt;();&lt;br /&gt;
           //using (DirectoryEntry searchRoot = new DirectoryEntry()) // Search from root of current domain&lt;br /&gt;
           using (DirectoryEntry searchRoot = new DirectoryEntry(&amp;quot;LDAP://&amp;quot; + allUsersSearchContainer))&lt;br /&gt;
           {&lt;br /&gt;
               DirectorySearcher ser = new DirectorySearcher(searchRoot)&lt;br /&gt;
                   {&lt;br /&gt;
                       Filter = &amp;quot;(&amp;amp;ObjectCategory=user)&amp;quot;,&lt;br /&gt;
                       ReferralChasing = ReferralChasingOption.All&lt;br /&gt;
                   };&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;Name&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
               ser.PropertiesToLoad.Add(&amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;br /&gt;
               //ser.PropertiesToLoad.Add(&amp;quot;description&amp;quot;);&lt;br /&gt;
               using (SearchResultCollection searchResults = ser.FindAll())&lt;br /&gt;
               {&lt;br /&gt;
                   int count = searchResults.Count;&lt;br /&gt;
                   for (int i = 0; i &amp;lt; count; i++)&lt;br /&gt;
                   {&lt;br /&gt;
                       SearchResult searchResult = searchResults[i];&lt;br /&gt;
                       string name = GetSearchResultProperty(searchResult, &amp;quot;Name&amp;quot;);&lt;br /&gt;
                       string distinguishedName = GetSearchResultProperty(searchResult, &amp;quot;distinguishedName&amp;quot;);&lt;br /&gt;
                       string samAccount = GetSearchResultProperty(searchResult, &amp;quot;sAMAccountName&amp;quot;);&lt;br /&gt;
                       //var email = GetSearchResultProperty(searchResult, &amp;quot;mail&amp;quot;);&lt;br /&gt;
                       //var description = GetSearchResultProperty(searchResult, &amp;quot;description&amp;quot;);&lt;br /&gt;
                       result.Add(new User&lt;br /&gt;
                                      {&lt;br /&gt;
                                          Name = name,&lt;br /&gt;
                                          Login = samAccount,&lt;br /&gt;
                                          DistinguishedName = distinguishedName,&lt;br /&gt;
                                          //Email = email, &lt;br /&gt;
                                          //Role = description&lt;br /&gt;
                                      });&lt;br /&gt;
                   }&lt;br /&gt;
               }&lt;br /&gt;
           }&lt;br /&gt;
           return result;&lt;br /&gt;
       }&lt;br /&gt;
       catch (Exception ex)&lt;br /&gt;
       {&lt;br /&gt;
           string message = string.Format(&amp;quot;FetchAllUsersFromActiveDirectory() failed&amp;quot;);&lt;br /&gt;
 //                Log.Error(message, ex);&lt;br /&gt;
           throw;&lt;br /&gt;
       }&lt;br /&gt;
   }&lt;br /&gt;
private static string GetSearchResultProperty(SearchResult result, string name)&lt;br /&gt;
   {&lt;br /&gt;
       if (result.Properties.Contains(name))&lt;br /&gt;
       {&lt;br /&gt;
           var propertyCollection = result.Properties[name];&lt;br /&gt;
           if (propertyCollection.Count == 1 &amp;amp;&amp;amp; propertyCollection[0] != null)&lt;br /&gt;
           {&lt;br /&gt;
               return propertyCollection[0].ToString();&lt;br /&gt;
           }&lt;br /&gt;
       }&lt;br /&gt;
       return string.Empty;&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Software&amp;diff=908</id>
		<title>Software</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Software&amp;diff=908"/>
				<updated>2014-12-02T04:54:17Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Active Directory]]&lt;br /&gt;
* [[OpenGL]]&lt;br /&gt;
* [[SSL Certificates]]&lt;br /&gt;
* ESRI&lt;br /&gt;
** [[ESRI Silverlight &amp;amp; WPF]]&lt;br /&gt;
* GIS&lt;br /&gt;
** [http://deepearth.codeplex.com/ DeepEarth -CodePlex Silverlight control] - [http://deepearth.soulsolutions.com.au/nearmap/ Online Demo]&lt;br /&gt;
** [http://www.openstreetmap.org/ OpenStreetMap.org]&lt;br /&gt;
* [[Google Chrome]]&lt;br /&gt;
* [[Log4net]]&lt;br /&gt;
* [[Microsoft Windows]]&lt;br /&gt;
* [[Windows Server 2008]]&lt;br /&gt;
* [[Office 2007]]&lt;br /&gt;
** [[OpenXML]]&lt;br /&gt;
* [[MOSS 2007]]&lt;br /&gt;
* [[SharePoint 2010]]&lt;br /&gt;
* [[PerformancePoint 2010]]&lt;br /&gt;
* [[InfoPath 2010]]&lt;br /&gt;
* [[Microsoft Patterns &amp;amp; Practices]]&lt;br /&gt;
** [[CAL]] (Composite Application Library)&lt;br /&gt;
* [[DevExpress]]&lt;br /&gt;
* [[Microsoft LINQ]]&lt;br /&gt;
* [[Entity Framework 4]] (EF)&lt;br /&gt;
* [[Microsoft Workflow Foundation]] (WF)&lt;br /&gt;
* [[Windows Identity Foundation]] (WIF)&lt;br /&gt;
* [[Windows Communication Foundation]] (WCF)&lt;br /&gt;
* [[Windows Presentation Foundation]] (WPF)&lt;br /&gt;
* [[Windows Management Instrumentation]] (WMI)&lt;br /&gt;
* [[Microsoft Remote Desktop]] (RDP)&lt;br /&gt;
* [[Windows Phone 7]] (WP7)&lt;br /&gt;
* [[Silverlight]]&lt;br /&gt;
** Silverlight Desktops:&lt;br /&gt;
*** [https://www.wiki-os.org/ https://www.wiki-os.org/]&lt;br /&gt;
*** [http://silveos.com/ http://silveos.com/]&lt;br /&gt;
* [[.NET]]&lt;br /&gt;
* [[.NET AOP]]&lt;br /&gt;
* [[.NET &amp;amp; Memory Leaks]]&lt;br /&gt;
* [[Oracle]]&lt;br /&gt;
* [[Paint.Net]]&lt;br /&gt;
* [[Physics Engines]]&lt;br /&gt;
* [[Powershell]]&lt;br /&gt;
* [[SMO]]&lt;br /&gt;
* [[SQL Server]]&lt;br /&gt;
* [[SQL Server Analysis Services]]&lt;br /&gt;
* [[SQL Server Reporting Services]]&lt;br /&gt;
* [[T4]]&lt;br /&gt;
* [[Enterprise Architect]]&lt;br /&gt;
* [[VS 2008]]&lt;br /&gt;
* [[VS 2010]]&lt;br /&gt;
** [[C#]]&lt;br /&gt;
* [[Microsoft TFS2010]]&lt;br /&gt;
&lt;br /&gt;
* [[Resharper]]&lt;br /&gt;
* [[Security]]&lt;br /&gt;
&lt;br /&gt;
Mobile&lt;br /&gt;
* [[Mono / Xamarin]]&lt;br /&gt;
&lt;br /&gt;
Linux&lt;br /&gt;
* [[Webmin]]&lt;br /&gt;
* [[New Linux Disk]]&lt;br /&gt;
&lt;br /&gt;
Web&lt;br /&gt;
* [[Which CMS]]&lt;br /&gt;
* [http://arstechnica.com/web/news/2011/02/chrome-takes-10-usage-share-ie-continues-to-haemorrhage.ars Worldwide browser market share: January 2011 (ArsTechnica)]&lt;br /&gt;
* [[HTML]]&lt;br /&gt;
* [[HTTP]]&lt;br /&gt;
* [[Javascript]]&lt;br /&gt;
* [[IIS / Web Development]]&lt;br /&gt;
* [[Web Video]]&lt;br /&gt;
&lt;br /&gt;
Standards&lt;br /&gt;
* [[UPnP/DNLA]]&lt;br /&gt;
&lt;br /&gt;
Google&lt;br /&gt;
* [[Google Maps]]&lt;br /&gt;
&lt;br /&gt;
Media Servers&lt;br /&gt;
* [[MythTV]]&lt;br /&gt;
* [[MediaTomb]]&lt;br /&gt;
* [[MiniDLNA]]&lt;br /&gt;
&lt;br /&gt;
=== UsefulWare ===&lt;br /&gt;
* [http://code.msdn.microsoft.com/AddInSpy AddInSpy - provides details of Office 2007 Addins]&lt;br /&gt;
* [http://www.cpuid.com/ CPU-Z]&lt;br /&gt;
* [[Flash Video Player]] (.flv player - VLC)&lt;br /&gt;
* [http://www.getpaint.net/ Paint.Net]&lt;br /&gt;
** [http://forums.getpaint.net/index.php?/topic/927-icon-cursor-and-animated-cursor-format-v37-may-2010/?s=ef9afdad1cb4967893e4e9bc1cd6473d .ico and .cur Paint.Net addin]&lt;br /&gt;
* [http://ccollomb.free.fr/unlocker/ Unlocker - unlock locked Windows files]&lt;br /&gt;
* [http://www.wingrep.com/index.htm Windows Grep]&lt;br /&gt;
* [http://www.msfn.org/board/How-to-make-a-7-Zip-Switchless-Installer-t39048.html How to make a 7-Zip Switchless Installer]&lt;br /&gt;
* [http://www.ltr-data.se/opencode.html/#ImDisk ImDisk RAMDisk virtual disk driver] Supports 32&amp;amp;64 bit incl Windows 7, GPL open source.&lt;br /&gt;
&lt;br /&gt;
=== Free Open Source Icons ===&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Nuvola Nuvola (Wikipedia)]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Open_Clip_Art_Library Open Clipart Library (Wikipedia)]&lt;br /&gt;
* [http://david.bellot.free.fr/svg-cards/ LGPL license playing cards, SVG format]&lt;br /&gt;
* [http://www.iconarchive.com/ http://www.iconarchive.com/] - not sure about licensing&lt;br /&gt;
&lt;br /&gt;
=== Royalty-free Vectors ===&lt;br /&gt;
* [http://www.vectorstock.com/free-vectors http://www.vectorstock.com/free-vectors]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=File:TVGuideBackup24Nov2014.zip&amp;diff=907</id>
		<title>File:TVGuideBackup24Nov2014.zip</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=File:TVGuideBackup24Nov2014.zip&amp;diff=907"/>
				<updated>2014-11-24T12:23:54Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Backup of 24 Nov 2014. GetGuides will get guides from a server.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Backup of 24 Nov 2014. GetGuides will get guides from a server.&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=TV_Guide&amp;diff=906</id>
		<title>TV Guide</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=TV_Guide&amp;diff=906"/>
				<updated>2014-11-24T12:22:35Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: Created page with &amp;quot;* Media:TVGuideBackup24Nov2014.zip&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:TVGuideBackup24Nov2014.zip]]&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	<entry>
		<id>http://w.rkdrm.com/index.php?title=Main_Page&amp;diff=905</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://w.rkdrm.com/index.php?title=Main_Page&amp;diff=905"/>
				<updated>2014-11-24T12:20:15Z</updated>
		
		<summary type="html">&lt;p&gt;Rkdrm: /* Backups */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== &amp;#039;&amp;#039;&amp;#039;Content&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
* [[SMS Links]]&lt;br /&gt;
* [[HowTo]]&lt;br /&gt;
* [[Shopping List]]&lt;br /&gt;
* [[Stereo Pair Images]]&lt;br /&gt;
* [[Haiku]]&lt;br /&gt;
* [[Architecture]]&lt;br /&gt;
* [[Software]]&lt;br /&gt;
* [[Hardware]]&lt;br /&gt;
* [[XCode]]&lt;br /&gt;
* [[Iguassu]]&lt;br /&gt;
* [[Bread]]&lt;br /&gt;
* [[Photos]]&lt;br /&gt;
* [[Places]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- * [http://maps.google.com.au/maps/ms?hl=en&amp;amp;ie=UTF8&amp;amp;msa=0&amp;amp;msid=109298058278878788801.000470f7be0dc41e24fec&amp;amp;ll=-33.447507,115.85915&amp;amp;spn=0.004069,0.008256&amp;amp;z=18 David &amp;amp; Denise&amp;#039;s House] --&amp;gt;&lt;br /&gt;
* [http://www.how-to-draw-and-paint.com/learn-to-draw.html Learn to Draw]&lt;br /&gt;
&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;Backups&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
* [[TV Guide]]&lt;br /&gt;
* [[Source Control]]&lt;br /&gt;
* [[Map App]]&lt;br /&gt;
* [[Workflow]]&lt;br /&gt;
* [[Config]]&lt;br /&gt;
* [[Upnp]]&lt;br /&gt;
* [[WeatherBrowse]]&lt;br /&gt;
* [[RestJsonExample]]&lt;br /&gt;
* [[ArcGISPushpinDragNDrop]]&lt;br /&gt;
* [[MumsFiles]]&lt;br /&gt;
&lt;br /&gt;
{{Help:Contents}}&lt;/div&gt;</summary>
		<author><name>Rkdrm</name></author>	</entry>

	</feed>