private Guid GetPreviewHandlerGUID( string filename )
{
RegistryKey ext = Registry.ClassesRoot.OpenSubKey( Path.GetExtension( filename ) );
if (ext != null)
{
RegistryKey test = ext.OpenSubKey( "shellex\\{8895b1c6-b41f-4c1c-a562-0d564250836f}" );
if (test != null) return new Guid( Convert.ToString( test.GetValue( null ) ) );
string className = Convert.ToString( ext.GetValue( null ) );
if (className != null)
{
test =
Registry.ClassesRoot.OpenSubKey( className + "\\shellex\\{8895b1c6-b41f-4c1c-a562-0d564250836f}" );
if (test != null) return new Guid( Convert.ToString( test.GetValue( null ) ) );
}
}
return Guid.Empty;
}