static public bool SplitAssemblyFullName( string assemblyFullName, out string assemblyName, out string versionCultureAndPublicKeyToken )
{
versionCultureAndPublicKeyToken = assemblyName = String.Empty;
int i = assemblyFullName.IndexOf( ',' );
if( i < 0 ) assemblyName = assemblyFullName;
else if( i > 0 )
{
if( i < assemblyFullName.Length - 1 )
{
versionCultureAndPublicKeyToken = assemblyFullName.Substring( Char.IsWhiteSpace( assemblyFullName, i + 1 ) ? i + 2 : i + 1 ).Trim();
}
assemblyName = assemblyFullName.Substring( 0, i ).Trim();
}
return assemblyName.Length > 0;
}