public static void ExceptionforResourceReaderDispose01() { Assert.Throws <InvalidOperationException>(() => { using (var ms2 = new MemoryStream()) { using (var rw = GenerateResourceStream(s_dict, ms2)) { ms2.Seek(0L, SeekOrigin.Begin); var rr1 = new ResourceReader(ms2); rr1.Dispose(); var s_found_list = new List <string>(); foreach (DictionaryEntry entry in rr1) { string key = (string)entry.Key; string value = (string)entry.Value; string found = s_dict[key]; Assert.True(string.Compare(value, found) == 0, "expected: " + value + ", but got : " + found); s_found_list.Add(key); } } } }); }
public static void Exception_Enumerator_Value() { Assert.Throws <InvalidOperationException>(() => { using (var ms2 = new MemoryStream()) { using (var rw = GenerateResourceStream(s_dict, ms2)) { ms2.Seek(0L, SeekOrigin.Begin); var rr1 = new ResourceReader(ms2); IDictionaryEnumerator enumarator = rr1.GetEnumerator(); rr1.Dispose(); var shouldnotgethere = enumarator.Value; } } }); }
/// <summary> /// Получает список ресурсов указанного именного файла ресурсов. /// </summary> /// <param name="File">Расположение файла</param> /// <returns></returns> public static AssemblyResources Load(String File) { Dictionary <String, Object> _list = new Dictionary <String, Object>(); using (ResourceReader RR = new ResourceReader(File)) { IDictionaryEnumerator _resources = RR.GetEnumerator(); while (_resources.MoveNext()) { _list.Add(_resources.Key.ToString(), _resources.Value); } RR.Close(); RR.Dispose(); } return(new AssemblyResources(_list)); }
} //resx添加视频时用 internal static IEnumerable <MediaPlayer.MediaFile> GetVideoResources(List <string> fileNames) { var mediaList = new List <MediaPlayer.MediaFile>(); if (File.Exists("Media.resource")) { using var resourceReader = new ResourceReader("Media.resource"); var en = resourceReader.GetEnumerator(); while (en.MoveNext()) { if (fileNames.Contains((string)en.Key)) { mediaList.Add(new MediaPlayer.MediaFile(en.Key?.ToString())); } } resourceReader.Dispose(); } return(mediaList); } //resx取回视频时用
public ExceptionVerifier(string assemblyName, ExceptionVerificationFlags flags, ITestOutputHelper output) { _output = output; if (assemblyName == null) { throw new VerifyException("Assembly name cannot be null"); } _verificationFlags = flags; try { switch (assemblyName.ToUpper()) { case "SYSTEM.XML": { var dom = new XmlDocument(); _asm = dom.GetType().Assembly; } break; default: _asm = Assembly.LoadFrom(GetRuntimeInstallDir() + assemblyName + ".dll"); break; } if (_asm == null) { throw new VerifyException("Can not load assembly " + assemblyName); } // let's determine if this is a loc run, if it is then we need to load satellite assembly _locAsm = null; if (!CultureInfo.CurrentCulture.Equals(new CultureInfo("en-US")) && !CultureInfo.CurrentCulture.Equals(new CultureInfo("en"))) { try { // load satellite assembly _locAsm = _asm.GetSatelliteAssembly(new CultureInfo(CultureInfo.CurrentCulture.Parent.IetfLanguageTag)); } catch (FileNotFoundException e1) { _output.WriteLine(e1.ToString()); } catch (FileLoadException e2) { _output.WriteLine(e2.ToString()); } } } catch (Exception e) { _output.WriteLine("Exception: " + e.Message); _output.WriteLine("Stack: " + e.StackTrace); throw new VerifyException("Error while loading assembly"); } string[] resArray; Stream resStream = null; var bFound = false; // Check that assembly manifest has resources if (null != _locAsm) { resArray = _locAsm.GetManifestResourceNames(); } else { resArray = _asm.GetManifestResourceNames(); } foreach (var s in resArray) { if (s.EndsWith(".resources")) { resStream = null != _locAsm?_locAsm.GetManifestResourceStream(s) : _asm.GetManifestResourceStream(s); bFound = true; if (bFound && resStream != null) { // Populate hashtable from resources var resReader = new ResourceReader(resStream); if (_resources == null) { _resources = new Hashtable(); } var ide = resReader.GetEnumerator(); while (ide.MoveNext()) { if (!_resources.ContainsKey(ide.Key.ToString())) { _resources.Add(ide.Key.ToString(), ide.Value.ToString()); } } resReader.Dispose(); } } } if (!bFound || resStream == null) { throw new VerifyException("GetManifestResourceStream() failed"); } }
private static void doEmbRes(Assembly asm) { string[] resNames = asm.GetManifestResourceNames(); if (resNames.Length == 0) { Console.WriteLine("\tвстроенные ресурсы НЕ НАЙДЕНЫ"); return; } foreach (string resName in resNames) { _resDict.Add(resName, new Dictionary <string, string>()); // read resource from resName (embedded .resources file) Stream stream = asm.GetManifestResourceStream(resName); if (stream == null) { _resDict[resName].Add("get_resources", "получен null stream"); } else { ResourceReader resReader = null; try { resReader = new ResourceReader(stream); } catch (ArgumentException) { } catch (Exception) { throw; } if (resReader == null) { continue; } foreach (DictionaryEntry item in resReader) { string key = item.Key.ToString(); string value = null; if (item.Value is Stream) { if (key.EndsWith(".resx", StringComparison.OrdinalIgnoreCase)) { ResXResourceReader reader = new ResXResourceReader((Stream)item.Value); foreach (DictionaryEntry resItem in reader) { _resDict[resName].Add(resItem.Key.ToString(), resItem.Value.ToString()); } reader.Close(); } else { StreamReader reader = new StreamReader((Stream)item.Value); value = reader.ReadToEnd(); reader.Dispose(); _resDict[resName].Add(key, value); } } else { value = item.Value.ToString(); _resDict[resName].Add(key, value); } } resReader.Dispose(); } } }
public static void Exception_Enumerator_Value() { Assert.Throws<InvalidOperationException>(() => { using (var ms2 = new MemoryStream()) { using (var rw = GenerateResourceStream(s_dict, ms2)) { ms2.Seek(0L, SeekOrigin.Begin); var rr1 = new ResourceReader(ms2); IDictionaryEnumerator enumarator = rr1.GetEnumerator(); rr1.Dispose(); var shouldnotgethere = enumarator.Value; } } }); }
public static void ExceptionforResourceReaderDispose01() { Assert.Throws<InvalidOperationException>(() => { using (var ms2 = new MemoryStream()) { using (var rw = GenerateResourceStream(s_dict, ms2)) { ms2.Seek(0L, SeekOrigin.Begin); var rr1 = new ResourceReader(ms2); rr1.Dispose(); var s_found_list = new List<string>(); foreach (DictionaryEntry entry in rr1) { string key = (string)entry.Key; string value = (string)entry.Value; string found = s_dict[key]; Assert.True(string.Compare(value, found) == 0, "expected: " + value + ", but got : " + found); s_found_list.Add(key); } } } }); }
private void Form2_Load(object sender, EventArgs e) { reTry: ParamKeys.Clear(); try { ResourceReader ResRead = new ResourceReader(@".\ConnectResources.resources"); ResourceSet ResSet = new ResourceSet(@".\ConnectResources.resources"); DataSet dS = new DataSet(); dS.Tables.Add("Settings"); dS.Tables["Settings"].Columns.Add("parameter"); dS.Tables["Settings"].Columns.Add("value"); IDictionaryEnumerator id = ResSet.GetEnumerator(); while (id.MoveNext()) { DataRow dTr = dS.Tables["Settings"].NewRow(); dTr["parameter"] = id.Key; dTr["value"] = id.Value; ParamKeys.Add(id.Key.ToString(), id.Value.ToString()); if (id.Key.ToString().ToLower().Contains("pass")) { dTr["value"] = "****"; } dS.Tables["Settings"].Rows.Add(dTr); } dataGridView1.AutoGenerateColumns = true; dataGridView1.DataSource = dS; dataGridView1.DataMember = dS.Tables["Settings"].TableName; dataGridView1.Sort(dataGridView1.Columns[0], ListSortDirection.Descending); ResRead.Close(); ResSet.Close(); ResRead.Dispose(); ResSet.Dispose(); } catch (Exception) { using (ResourceWriter rw = new ResourceWriter(@".\ConnectResources.resources")) { rw.AddResource("UrlPGW", "http://10.215.32.30:8001;http://10.215.34.30:8001;"); rw.AddResource("urlSPG", "http://10.215.134.76:8080/spg;http://10.215.23.12:8080"); rw.AddResource("stpIP", "boNpdb=10.215.32.37;soNpdb=10.215.34.37"); rw.AddResource("stpIndex", "0:D95; 1:D12; 2:D11; 3:D83; 4:D84; 5:D85; 6:D92; 7:D81; 8:D82; 9:D13; 10:B14; 11:B12; 12:B11; 13:D20; 14:D21; 15:D90"); rw.AddResource("stpUser", "itmediation"); rw.AddResource("stpPass", Program.Base64Encode("itmediation")); //itmediation rw.AddResource("pgwUser", "itbilling"); rw.AddResource("pgwPass", Program.Base64Encode("itbilling")); //itbilling rw.AddResource("spgUser", "bsstest"); rw.AddResource("spgPass", Program.Base64Encode("Huawei!@34")); //Huawei!@34 rw.AddResource("DefaultRealm", "ims.ooredoo.om"); rw.AddResource("imsEnsZone", "8.6.9.e164.arpa"); rw.AddResource("userIFC", "10"); rw.AddResource("trunkIFC", "25"); rw.AddResource("imsSrvKey", "80"); rw.AddResource("imsScfAddr", "96895001060"); rw.AddResource("trunkSCSCF", "sip:boscscf1.ims.ooredoo.om"); rw.AddResource("AGCF", "BOAGCF"); rw.AddResource("ManualXmlInputDestination", "SPG"); rw.Generate(); rw.Close(); rw.Dispose(); } goto reTry; } }