From: <ze...@us...> - 2007-03-04 16:39:16
|
Revision: 157 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=157&view=rev Author: zebons Date: 2007-03-04 08:39:07 -0800 (Sun, 04 Mar 2007) Log Message: ----------- Added Paths: ----------- trunk/plugins/MyFilms/AssemblyInfo.cs trunk/plugins/MyFilms/CString.cs trunk/plugins/MyFilms/MesFilms.csproj.user trunk/plugins/MyFilms/mesfilms.FxCop Added: trunk/plugins/MyFilms/AssemblyInfo.cs =================================================================== --- trunk/plugins/MyFilms/AssemblyInfo.cs (rev 0) +++ trunk/plugins/MyFilms/AssemblyInfo.cs 2007-03-04 16:39:07 UTC (rev 157) @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Les informations générales relatives à un assembly dépendent de +// l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations +// associées à un assembly. +[assembly: AssemblyTitle("MesFilms")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Personnel")] +[assembly: AssemblyProduct("MesFilms")] +[assembly: AssemblyCopyright("Copyright © Personnel 2006")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly +// aux composants COM. Si vous devez accéder à un type dans cet assembly à partir de +// COM, affectez la valeur true à l'attribut ComVisible sur ce type. +[assembly: ComVisible(false)] + +// Le GUID suivant est pour l'ID de la typelib si ce projet est exposé à COM +[assembly: Guid("d56acbdd-1a89-478f-8339-bf5e17d5554b")] + +// Les informations de version pour un assembly se composent des quatre valeurs suivantes : +// +// Version principale +// Version secondaire +// Numéro de build +// Révision +// +// Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de révision et de build par défaut +// en utilisant '*', comme indiqué ci-dessous : +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] Added: trunk/plugins/MyFilms/CString.cs =================================================================== --- trunk/plugins/MyFilms/CString.cs (rev 0) +++ trunk/plugins/MyFilms/CString.cs 2007-03-04 16:39:07 UTC (rev 157) @@ -0,0 +1,509 @@ +#region Copyright (C) 2005-2007 Team MediaPortal + +/* + * Copyright (C) 2005-2007 Team MediaPortal + * http://www.team-mediaportal.com + * + * This Program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This Program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GNU Make; see the file COPYING. If not, write to + * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. + * http://www.gnu.org/copyleft/gpl.html + * + */ + +#endregion + +using System; +using System.Collections.Generic; +using System.Globalization; + +namespace NewStringLib +{ + /// <summary> + /// Implementing String Methods + /// </summary> + public class NewString + { + string myString; + + #region ctor + public NewString() { myString = String.Empty; } + public NewString(string value) { myString = value; } + #endregion + + #region Left, Right & Mid + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string Left(int length) { return Left(myString, length); } + /// <summary>Return left hand part of a string</summary> + /// <param name="source">string to split</param> + /// <param name="length">Number of characters to return</param> + /// <returns>Returns left part of the string OR complete original string if length less than 1</returns> + public static string Left(string source, int length) + { + if( source == null ) throw new ArgumentNullException("source"); + if (length > 0) + return source.Substring(0, length); + else + return source; + } + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string Right(int length) { return Right(myString, length); } + /// <summary>Returns right part of a string</summary> + /// <param name="source">string to split</param> + /// <param name="length">Number of characters to return</param> + /// <returns>Returns right part of the string OR complete original string if length less than 1</returns> + public static string Right(string source, int length) + { + if (source == null) throw new ArgumentNullException("source"); + + if (length > 0) + return source.Substring(source.Length - length); + else + return source; + } + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string Mid(int index) { return Mid(myString, index); } + /// <summary>Returns right part of a string</summary> + /// <param name="source">string to split</param> + /// <param name="index">Position in string to return from to end of string</param> + /// <returns>Returns right part of the string</returns> + public static string Mid(string source, int index) + { + if (source == null) throw new ArgumentNullException("source"); + return source.Substring(index); + } + + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string Mid(int index, int length) { return Mid(myString, index, length); } + /// <summary>Returns middle part of a string</summary> + /// <param name="source">string to split</param> + /// <param name="index">Position in string to start extract</param> + /// <param name="length">Number of characters to extract</param> + /// <returns>Returns middle part of string</returns> + public static string Mid(string source, int index, int length) + { + if (source == null) throw new ArgumentNullException("source"); + return source.Substring(index, length); + } + #endregion + + + #region Positional functions + /// <summary>Searches for substring in string</summary> + /// <param name="findText">string to look for</param> + /// <param name="source">string to search within</param> + /// <returns>Position in string of first match</returns> + public static int Pos(string findText, string source) + { + if (source == null) throw new ArgumentNullException("source"); + + return source.IndexOf(findText); + } + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public int PPos(string findText, int index) { return myString.IndexOf(findText, index); } + /// <summary>Searches for substring in string</summary> + /// <param name="findText">string to look for</param> + /// <param name="source">string to search within</param> + /// <param name="index">Position in string to begin searching from</param> + /// <returns>Position in string of next match</returns> + public static int PPos(string findText, string source, int index) + { + if (findText == null) throw new ArgumentNullException("findText"); + if (source == null) throw new ArgumentNullException("source"); + return source.IndexOf(findText, index); + } + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public int NPos(string findText, int count, bool asChars) { return NPos(findText, myString, count, asChars); } + /// <summary>Searches for position of nth substring in string</summary> + /// <param name="findText">string to look for</param> + /// <param name="findText">string to look for</param> + /// <param name="source">string to search within</param> + /// <param name="count">find n'th match in string. If negative search backwards from end of string for -n'th match</param> + /// <param name="asChars">If true treat findText as a character array, matching on ANY char</param> + /// <returns>Position in string of n'th match</returns> + public static int NPos(string findText, string source, int count, bool asChars) + { + int index; + int iLen; + char[] sFindArray; + + if (findText == null) throw new ArgumentNullException("findText"); + if (source == null) throw new ArgumentNullException("source"); + + iLen = (asChars) ? 1 : findText.Length; + sFindArray = findText.ToCharArray(); + + if (count < 0) + { + index = NPos(Reverse(findText), Reverse(source), count * -1, asChars); + if (index != -1) index = source.Length - index - iLen; + return index; + } + + index = -iLen; + do + { + index = (asChars) ? source.IndexOfAny(sFindArray, index + 1) : source.IndexOf(findText, index + iLen); + count--; + }while (index >= 0 && count > 0); + if (count > 0) index = -1; //not found enough + return index; + } + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public int PosCount(string findText, bool asChars) { return PosCount(findText, myString, asChars); } + /// <summary>count how many substrings are present in the string</summary> + /// <param name="findText">string to look for</param> + /// <param name="source">string to search within</param> + /// <param name="asChars">If true treat findText as a character array, matching on ANY char</param> + /// <returns>Count of substrings found</returns> + public static int PosCount(string findText, string source, bool asChars) + { + int index; + int count=-1; + int iLen; + char[] sFindArray; + + if (findText == null) throw new ArgumentNullException("findText"); + if (source == null) throw new ArgumentNullException("source"); + + iLen = (asChars) ? 1 : findText.Length; + sFindArray = findText.ToCharArray(); + + index = -iLen; + do + { + index = (asChars) ? source.IndexOfAny(sFindArray, index+1) : source.IndexOf(findText, index+iLen); + count++; + } while (index >= 0); + return count; + } + #endregion + + #region Positional extraction functions + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string NPosMid(string findText, int startCount, int endCount, bool include, bool asChars) + { return NPosMid(findText, myString, startCount, endCount, include, asChars); } + /// <summary>Gets the middle string between 2 matches of a substring in a string</summary> + /// <param name="findText">string to look for</param> + /// <param name="source">string to search within</param> + /// <param name="startCount">Find n'th match in string. If negative search back from end of string. If 0 or no match grab from string start</param> + /// <param name="endCount">Find n'th match in string. If negative search back from end of string. If 0 or no match grab to string end</param> + /// <param name="include">If true include the findText substring in returned string</param> + /// <param name="asChars">If true treat findText as a character array, matching on ANY char</param> + /// <returns>Middle string Between n'th and n'th match of findText in source</returns> + public static string NPosMid(string findText, string source, int startCount, int endCount, bool include, bool asChars) + { + int iLen; + + if (findText == null) throw new ArgumentNullException("findText"); + if (source == null) throw new ArgumentNullException("source"); + + iLen = (asChars) ? 1 : findText.Length; + + if (startCount != 0) //dont bother looking if 0 + { + startCount = NPos(findText, source, startCount, asChars); //get pos of begin'th occurrence + if (startCount >= 0 && !include) startCount += iLen; + } + // else (leave as 0 no need to = -1) + + if (endCount != 0) + { + endCount = NPos(findText, source, endCount, asChars); //get pos of end'th occurrence + if (endCount >= 0 && include) endCount += iLen; + } + else + endCount = -1; //dont bother looking if 0, set -1 for later + + if (startCount < 0) startCount = 0; //set startCount to start of str + if (endCount < 0) endCount = source.Length; //set endCount to end of str+1 + + return source.Substring(startCount, endCount - startCount); + } + + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string NPosLeft(string findText, int count, bool include, bool asChars) + { return NPosMid(findText, myString, 0, count, include, asChars); } + /// <summary>Gets the left part of a string before the n'th match of a substring in a string</summary> + /// <param name="findText">string to look for</param> + /// <param name="source">string to search within</param> + /// <param name="count">Find n'th match in string. If negative search back from end of string. If 0 or no match grab from string start</param> + /// <param name="include">If true include the findText substring in returned string</param> + /// <param name="asChars">If true treat findText as a character array, matching on ANY char</param> + /// <returns>Left string before n'th match of findText in source</returns> + public static string NPosLeft(string findText, string source, int count, bool include, bool asChars) + { return NPosMid(findText, source, 0, count, include, asChars); } + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string PosLeft(string findText) + { return NPosMid(findText, myString, 0, 1, false, false); } + /// <summary>Gets the left part of a string before the first match of a substring in a string</summary> + /// <param name="findText">string to look for</param> + /// <param name="source">string to search within</param> + /// <returns>Left string before first match of findText in source</returns> + public static string PosLeft(string findText, string source) + { return NPosMid(findText, source, 0, 1, false, false); } + + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string NPosRight(string findText, int count, bool include, bool asChars) + { return NPosMid(findText, myString, count, 0, include, asChars); } + /// <summary>Gets the right part of a string after the n'th match of a substring in a string</summary> + /// <param name="findText">String to look for</param> + /// <param name="source">String to search within</param> + /// <param name="count">Find n'th match in string. If negative search back from end of string. If 0 or no match grab to end of string</param> + /// <param name="include">If true include the findText substring in returned string</param> + /// <param name="asChars">If true treat findText as a character array, matching on ANY char</param> + /// <returns>Right string after n'th match of findText in source</returns> + public static string NPosRight(string findText, string source, int count, bool include, bool asChars) + { return NPosMid(findText, source, count, 0, include, asChars); } + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string PosRight(string findText) + { return NPosMid(findText, myString, 1, 0, false, false); } + /// <summary>Gets the right part of a string after the first match of a substring in a string</summary> + /// <param name="findText">String to look for</param> + /// <param name="source">String to search within</param> + /// <returns>Right string after first match of findText in source</returns> + public static string PosRight(string findText, string source) + { return NPosMid(findText, source, 1, 0, false, false); } + #endregion + + #region Search & Replace functions + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string NPosReplaceString(string findText, string replaceText, int count) + { return NPosReplaceString(findText, replaceText, myString, count); } + /// <summary>Replaces all occurences of findText with replaceText in sStr from after n'th instance of findText</summary> + /// <param name="findText">String to look for</param> + /// <param name="replaceText">String to replace it with</param> + /// <param name="source">String to search within</param> + /// <param name="count">Find n'th match in string.</param> + /// <returns>New string with replacements</returns> + public static string NPosReplaceString(string findText, string replaceText, string source, int count) + { + string source2; + + if (findText == null) throw new ArgumentNullException("findText"); + if (replaceText == null) throw new ArgumentNullException("replaceText"); + if (source == null) throw new ArgumentNullException("source"); + + source2 = NPosRight(findText, source, count, false, false); + if (source2.Length != 0) + return source.Substring(0, source.Length - source2.Length) + source2.Replace(findText, replaceText); + else + return source; + } + + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string PosReplaceString(string startText, string endText, string replaceText, int index) + { return PosReplaceString(startText, endText, replaceText, myString, index); } + /// <summary>Replaces all occurences of text between 2 different substrings with a 3rd substring</summary> + /// <param name="startText">String to look for to begin replace</param> + /// <param name="endText">String to look for to end replace. Can be empty "" to just replace sFindBegs not range between</param> + /// <param name="replaceText">String to replace it with. Can be empty "" to just erase each match</param> + /// <param name="source">String to search within</param> + /// <param name="index">Position in string to begin search/replacing from</param> + /// <returns>New string with replacements</returns> + public static string PosReplaceString(string startText, string endText, string replaceText, string source, int index) + { + int pEnd; + + if (startText == null) throw new ArgumentNullException("startText"); + if (endText == null) throw new ArgumentNullException("endText"); + if (replaceText == null) throw new ArgumentNullException("replaceText"); + if (source == null) throw new ArgumentNullException("source"); + + if (index < 0) index = 0; + while (true) + { + index = source.IndexOf(startText, index); + if (index == -1) break; + + if (endText.Length != 0) + { + pEnd = source.IndexOf(endText, index + 1); + if (pEnd == -1) break; + pEnd = pEnd + endText.Length; + } + else + pEnd = index + startText.Length; + + source = source.Remove(index, pEnd - index); + if (replaceText.Length != 0) source = source.Insert(index, replaceText); + index = index + replaceText.Length; + if (index > source.Length) break; + } + return source; + } + + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string PosReplace(string replaceText, int index) + { return PosReplace(replaceText, myString, index); } + /// <summary>Replace text of equel length to new text with the new text</summary> + /// <param name="replaceText">String to replace</param> + /// <param name="index">Position in string to replace at</param> + /// <returns>New string with replacements</returns> + public static string PosReplace(string replaceText, string source, int index) + { + if (replaceText == null) throw new ArgumentNullException("replaceText"); + if (source == null) throw new ArgumentNullException("source"); + + source = source.Remove(index, replaceText.Length); + source = source.Insert(index, replaceText); + return source; + } + + + /// <summary>Non-static version of function below. Operates on NewString object</summary> + public string StripChars(string strip) + { return StripChars(strip, myString); } + /// <summary>Removes all chars in supplied string</summary> + /// <param name="strip">String of chars to remove from string</param> + /// <param name="source">String to search within</param> + /// <returns>New string without strip within it</returns> + public static string StripChars(string strip, string source) + { + if (strip == null) throw new ArgumentNullException("strip"); + if (source == null) throw new ArgumentNullException("source"); + + for (int i = 0; i < strip.Length; i++) + source = source.Replace(strip.Substring(i, 1), null); + return source; // xxx check if original affected + } + #endregion + + + #region Conversion functions + /// <summary>Convert String to ProperCase</summary> + /// <param name="source">String to be converted to ProperCase</param> + /// <returns>The ProperCase String</returns> + public string ProperCase(){return ProperCase (myString);} + public static string ProperCase(string source) + { + char[] sFindArray = { ' ', '\t', '\n', '.' }; + int index = 0; + char[] sArray; + + if (source == null) throw new ArgumentNullException("source"); + + sArray = source.ToCharArray(); + + do + { + sArray[index] = Char.ToUpper(sArray[index], CultureInfo.CurrentCulture); + index = source.IndexOfAny(sFindArray, index) + 1; + } while (index > 0 && index < source.Length); + return new string(sArray); + } + + + /// <summary>Recursion Reverse function to Reverse a given String</summary> + /// <param name="source">String to be Reversed</param> + /// <returns>The Reversed string</returns> + public string Reverse() { return Reverse(myString); } + public static string Reverse(string source) + { + if (source == null) throw new ArgumentNullException("source"); + + if (source.Length == 1) + { + return source; + } + else + { + return Reverse( source.Substring(1) ) + source.Substring(0,1); + } + } + + + /// <summary>Converts any multiple adjacent spaces to a single space</summary> + /// <returns>The trimmed string</returns> + public string TrimToSingleSpace() { return TrimToSingleSpace(myString); } + public static string TrimToSingleSpace(string source) + { + int intPos; + + if (source == null) throw new ArgumentNullException("source"); + + intPos = source.IndexOf(" "); + if (intPos == -1) + { + return source; + } + else + { + return TrimToSingleSpace(source.Substring(0,intPos) + source.Substring(intPos+1)); + } + } + #endregion + + + #region Non_String_functions + // -------- NON-STRING BUT USEFUL FUNCS ADDED HERE FOR NOW ------------ + + /// <summary>Returns the smaller of 2 values</summary> + /// <param name="val1">First value to compare</param> + /// <param name="val2">Second value to compare</param> + /// <returns>Smaller value</returns> + public static T Min<T>(T val1, T val2) + { + T retVal = val2; + if (Comparer<T>.Default.Compare(val1, val2) < 0) + retVal = val1; + return retVal; + } + + /// <summary>Returns the greater of 2 values</summary> + /// <param name="val1">First value to compare</param> + /// <param name="val2">Second value to compare</param> + /// <returns>Greater value value</returns> + public static T Max<T>(T val1, T val2) + { + T retVal = val1; + if (Comparer<T>.Default.Compare(val1, val2) < 0) + retVal = val2; + return retVal; + } + #endregion + + + //private static void Test() + //{ + // string text1 = "the.cat.sat.on.the.mat"; + // string text2 = "The cat sat on the mat the cat"; + // string text; + // int index; + + // text = Left(text1, 5); //the.c" + // text = Mid(text1, 5, 5); // "at.sa" + // text = Right(text1, 5); // "e.mat" + // index = NPos("the", text1, 2, false); //15 + // text = NPosMid(".", text1, 2, -2, false, false); // "sat.on" + // text = PosReplaceString(".", ".", "-blah-", text1, 4); // "the.cat-blah-on-blah-mat" + // text = ProperCase(text1); //"The.Cat.Sat.On.The.Mat" + // text = Reverse(text1); //"tam.eht.no.tas.tac.eht" + // text = TrimToSingleSpace(text2); // "The cat sat on the mat the cat" + // text = StripChars("aeiou", text1); // "th.ct.st.n.th.mt" + // text = NPosReplaceString("the", "a", text1, 0); //"a.cat.sat.on.a.mat"; + //} + } +} Added: trunk/plugins/MyFilms/MesFilms.csproj.user =================================================================== --- trunk/plugins/MyFilms/MesFilms.csproj.user (rev 0) +++ trunk/plugins/MyFilms/MesFilms.csproj.user 2007-03-04 16:39:07 UTC (rev 157) @@ -0,0 +1,13 @@ +<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <ReferencePath>D:\devel\vs2005\mediaportal\xbmc\bin\Debug\;D:\devel\vs2005\mediaportal\xbmc\bin\Debug\plugins\windows\</ReferencePath> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <StartAction>Program</StartAction> + <StartProgram>D:\devel\vs2005\mediaportal\xbmc\bin\Debug\MediaPortal.exe</StartProgram> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <StartAction>Program</StartAction> + <StartProgram>D:\devel\vs2005\mediaportal\xbmc\bin\Release\MediaPortal.exe</StartProgram> + </PropertyGroup> +</Project> \ No newline at end of file Added: trunk/plugins/MyFilms/mesfilms.FxCop =================================================================== --- trunk/plugins/MyFilms/mesfilms.FxCop (rev 0) +++ trunk/plugins/MyFilms/mesfilms.FxCop 2007-03-04 16:39:07 UTC (rev 157) @@ -0,0 +1,103 @@ +<?xml version="1.0" encoding="utf-8"?> +<FxCopProject Version="1.35" Name="My FxCop Project"> + <ProjectOptions> + <SharedProject>True</SharedProject> + <Stylesheet Apply="False">http://www.gotdotnet.com/team/fxcop//xsl/1.35/FxCopReport.xsl</Stylesheet> + <SaveMessages> + <Project Status="Active, Excluded" NewOnly="False" /> + <Report Status="Active" NewOnly="False" /> + </SaveMessages> + <ProjectFile Compress="True" DefaultTargetCheck="True" DefaultRuleCheck="True" SaveByRuleGroup="" Deterministic="True" /> + <EnableMultithreadedLoad>True</EnableMultithreadedLoad> + <EnableMultithreadedAnalysis>True</EnableMultithreadedAnalysis> + <SourceLookup>True</SourceLookup> + <AnalysisExceptionsThreshold>10</AnalysisExceptionsThreshold> + <RuleExceptionsThreshold>1</RuleExceptionsThreshold> + <Spelling Locale="en-us" /> + <VersionAware>False</VersionAware> + <OverrideRuleVisibilities>False</OverrideRuleVisibilities> + <CustomDictionaries SearchFxCopDir="True" SearchUserProfile="True" SearchProjectDir="True" /> + <SearchGlobalAssemblyCache>False</SearchGlobalAssemblyCache> + <DeadlockDetectionTimeout>120</DeadlockDetectionTimeout> + </ProjectOptions> + <Targets> + <Target Name="$(ProjectDir)/../mediaportal/xbmc/bin/Debug/Core.dll" Analyze="False" AnalyzeAllChildren="False" /> + <Target Name="$(ProjectDir)/../mediaportal/xbmc/bin/Debug/plugins/windows/MesFilms.dll" Analyze="True" AnalyzeAllChildren="False"> + <Modules AnalyzeAllChildren="False"> + <Module Name="mesfilms.dll" Analyze="True" AnalyzeAllChildren="False"> + <Namespaces AnalyzeAllChildren="False"> + <Namespace Name="NewStringLib" Analyze="True" AnalyzeAllChildren="True" /> + </Namespaces> + <Resources AnalyzeAllChildren="False" /> + </Module> + </Modules> + </Target> + </Targets> + <Rules> + <RuleFiles> + <RuleFile Name="$(FxCopDir)\Rules\DesignRules.dll" Enabled="True" AllRulesEnabled="True" /> + <RuleFile Name="$(FxCopDir)\Rules\GlobalizationRules.dll" Enabled="True" AllRulesEnabled="True" /> + <RuleFile Name="$(FxCopDir)\Rules\InteroperabilityRules.dll" Enabled="True" AllRulesEnabled="True" /> + <RuleFile Name="$(FxCopDir)\Rules\MobilityRules.dll" Enabled="True" AllRulesEnabled="True" /> + <RuleFile Name="$(FxCopDir)\Rules\NamingRules.dll" Enabled="True" AllRulesEnabled="True" /> + <RuleFile Name="$(FxCopDir)\Rules\PerformanceRules.dll" Enabled="True" AllRulesEnabled="True" /> + <RuleFile Name="$(FxCopDir)\Rules\PortabilityRules.dll" Enabled="True" AllRulesEnabled="True" /> + <RuleFile Name="$(FxCopDir)\Rules\SecurityRules.dll" Enabled="True" AllRulesEnabled="True" /> + <RuleFile Name="$(FxCopDir)\Rules\UsageRules.dll" Enabled="True" AllRulesEnabled="True" /> + </RuleFiles> + <Groups /> + <Settings /> + </Rules> + <FxCopReport Version="1.35"> + <Namespaces> + <Namespace Name="NewStringLib"> + <Messages> + <Message TypeName="AvoidNamespacesWithFewTypes" Category="Microsoft.Design" CheckId="CA1020" Status="Excluded" Created="2007-02-17 13:12:35Z"> + <Issue> + <Item>NewStringLib</Item> + </Issue> + </Message> + </Messages> + </Namespace> + </Namespaces> + <Targets> + <Target Name="$(ProjectDir)/../mediaportal/xbmc/bin/Debug/plugins/windows/MesFilms.dll"> + <Modules> + <Module Name="mesfilms.dll"> + <Messages> + <Message TypeName="AssembliesShouldDeclareMinimumSecurity" Category="Microsoft.Usage" CheckId="CA2209" Created="2007-02-17 12:07:04Z"> + <Issue> + <Item>MesFilms</Item> + </Issue> + </Message> + <Message TypeName="AssembliesShouldHaveValidStrongNames" Category="Microsoft.Design" CheckId="CA2210" Created="2007-02-17 12:07:04Z"> + <Issue Name="NoStrongName"> + <Item>MesFilms</Item> + </Issue> + </Message> + <Message TypeName="MarkAssembliesWithClsCompliant" Category="Microsoft.Design" CheckId="CA1014" Created="2007-02-17 12:07:04Z"> + <Issue Name="NoAttr"> + <Item>MesFilms</Item> + </Issue> + </Message> + </Messages> + </Module> + </Modules> + </Target> + </Targets> + <Rules> + <Rule TypeName="AssembliesShouldDeclareMinimumSecurity" Category="Microsoft.Usage" CheckId="CA2209"> + <Resolution Name="Default">No valid permission requests were found for assembly '{0}'. You should always specify the minimum security permissions using SecurityAction.RequestMinimum.</Resolution> + </Rule> + <Rule TypeName="AssembliesShouldHaveValidStrongNames" Category="Microsoft.Design" CheckId="CA2210"> + <Resolution Name="NoStrongName">Sign '{0}' with a strong name key.</Resolution> + </Rule> + <Rule TypeName="AvoidNamespacesWithFewTypes" Category="Microsoft.Design" CheckId="CA1020"> + <Resolution Name="Default">Consider merging the types defined in '{0}' with another namespace.</Resolution> + </Rule> + <Rule TypeName="MarkAssembliesWithClsCompliant" Category="Microsoft.Design" CheckId="CA1014"> + <Resolution Name="NoAttr">'{0}' should be marked with CLSCompliantAttribute and its value should be true.</Resolution> + </Rule> + </Rules> + </FxCopReport> +</FxCopProject> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |