Пример #1
0
        private bool Durdur()
        {
            try
            {
                                #if UUNNIITTYY
                if (Mutex_ != null)
                {
                    Mutex_.Close(); Mutex_ = null;
                }
                                #else
                if (Mutex_ != null)
                {
                    Mutex_.Dispose(); Mutex_ = null;
                }
                                #endif

                if (Zamanlayıcı != null)
                {
                    Zamanlayıcı.Dispose(); Zamanlayıcı = null;
                }
                if (Karmaşıklaştırma != null)
                {
                    Karmaşıklaştırma.Dispose(); Karmaşıklaştırma = null;
                }

                if (AyarlarDalı != null)
                {
                    AyarlarDalı.RemoveAll(); AyarlarDalı = null;
                }
                if (Döküman != null)
                {
                    Döküman.RemoveAll(); Döküman = null;
                }

                return(true);
            }
            catch (Exception) { return(false); }
        }
Пример #2
0
        public bool YenidenBaşlat(string AyarlarİçinParola = "", string AyarlarDosyası = "", bool Izin_AltDallarıdaKarıştır = false, int Süre_DeğişiklikleriKaydetmeAralığı_Sn = 30, int Süre_KaynaklarıBoşaltmaAralığı_Dk = 30)
        {
            try
            {
                Dispose();
                disposedValue = false;

                                #if UUNNIITTYY
                                        #if UNITY_EDITOR
                AyarlarDosyası = AyarlarDosyası.Replace('/', '\\');
                                        #endif
                AyarlarDosyasıYolu = AyarlarDosyası;
                                #else
                if (AyarlarDosyası == "")
                {
                    AyarlarDosyasıYolu = GetType().Assembly.Location + ".Ayarlar";
                }
                else if (AyarlarDosyası.Contains("\\"))
                {
                    AyarlarDosyasıYolu = AyarlarDosyası;
                }
                else
                {
                    AyarlarDosyasıYolu = Path.GetDirectoryName(GetType().Assembly.Location) + "\\" + AyarlarDosyası + ".Ayarlar";
                }
                                #endif

                if (!File.Exists(AyarlarDosyasıYolu))
                {
                    if (!Directory.Exists(Path.GetDirectoryName(AyarlarDosyasıYolu)))
                    {
                        Directory.CreateDirectory(Path.GetDirectoryName(AyarlarDosyasıYolu));
                    }
                    FileStream gecici = File.Create(AyarlarDosyasıYolu);
                    gecici.Close();
                    File.Delete(AyarlarDosyasıYolu);
                }
            }
            catch (Exception) { AyarlarDosyasıYolu = ""; }

            if (string.IsNullOrEmpty(AyarlarİçinParola))
            {
                Parola = "";
                AltDallarıdaKarıştır = false;
            }
            else
            {
                Parola = AyarlarİçinParola;
                AltDallarıdaKarıştır = Izin_AltDallarıdaKarıştır;
                if (Karmaşıklaştırma == null)
                {
                    Karmaşıklaştırma = new DahaCokKarmasiklastirma_();
                }
            }

            DeğişiklikleriKaydetmeAralığı_Sn = Süre_DeğişiklikleriKaydetmeAralığı_Sn;
            KaynaklarıBoşaltmaAralığı_Dk     = Süre_KaynaklarıBoşaltmaAralığı_Dk;

            try
            {
                Döküman = new XmlDocument();

                if (!File.Exists(AyarlarDosyasıYolu))
                {
                    XmlElement AnaKatman = Döküman.CreateElement("AnaKatman");

                    XmlElement Kendi   = Döküman.CreateElement("Kendi");
                    XmlElement Kendi_1 = Döküman.CreateElement("Olusturulma");
                    Kendi_1.InnerText = DateTime.Now.ToString();
                    XmlElement Kendi_2 = Döküman.CreateElement("Konum");
                    Kendi_2.InnerText = AyarlarDosyasıYolu;
                    XmlElement Kendi_3 = Döküman.CreateElement("Surum");
                    Kendi_3.InnerText = Sürüm;
                    XmlElement Kendi_4 = Döküman.CreateElement("BilgisayarVeKullanıcıAdı");
                    Kendi_4.InnerText = Environment.MachineName + "/" + Environment.UserName;
                    Kendi.AppendChild(Kendi_1);
                    Kendi.AppendChild(Kendi_2);
                    Kendi.AppendChild(Kendi_3);
                    Kendi.AppendChild(Kendi_4);

                    XmlElement Uygulama   = Döküman.CreateElement("Uygulama");
                    XmlElement Uygulama_1 = Döküman.CreateElement("Ad");
                                        #if UUNNIITTYY
                    Uygulama_1.InnerText = UnityEngine.Application.productName;
                                        #else
                    Uygulama_1.InnerText = System.Windows.Forms.Application.ProductName;
                                        #endif
                    XmlElement Uygulama_2 = Döküman.CreateElement("Surum");
                                        #if UUNNIITTYY
                    Uygulama_2.InnerText = "V" + UnityEngine.Application.version;
                                        #else
                    Uygulama_2.InnerText = "V" + System.Windows.Forms.Application.ProductVersion;
                                        #endif
                    Uygulama.AppendChild(Uygulama_1);
                    Uygulama.AppendChild(Uygulama_2);

                    XmlElement Ayarlar = Döküman.CreateElement("Ayarlar");

                    XmlElement DogrulamaKontrolu   = Döküman.CreateElement("DogrulamaKontrolu");
                    XmlElement DogrulamaKontrolu_1 = Döküman.CreateElement("ButunlukKontrolu");
                    DogrulamaKontrolu_1.InnerText = D_HexMetin.BaytDizisinden(D_GeriDönülemezKarmaşıklaştırmaMetodu.BaytDizisinden(D_Metin.BaytDizisine(Ayarlar.OuterXml), 32));
                    XmlElement DogrulamaKontrolu_2 = Döküman.CreateElement("ParolaKontrolu");
                    if (Parola == "")
                    {
                        DogrulamaKontrolu_2.InnerText = "ParolaKontroluBilgisi";
                    }
                    else
                    {
                        DogrulamaKontrolu_2.InnerText = Karmaşıklaştırma.Karıştır("ParolaKontroluBilgisi", Parola);
                    }
                    DogrulamaKontrolu.AppendChild(DogrulamaKontrolu_1);
                    DogrulamaKontrolu.AppendChild(DogrulamaKontrolu_2);

                    AnaKatman.AppendChild(Kendi);
                    AnaKatman.AppendChild(Uygulama);
                    AnaKatman.AppendChild(Ayarlar);
                    AnaKatman.AppendChild(DogrulamaKontrolu);

                    Döküman.AppendChild(AnaKatman);
                    Döküman.Save(AyarlarDosyasıYolu);
                }

                if (EtkinMi())
                {
                    return(true);
                }
            }
            catch (Exception) { }

            Durdur();
            return(false);
        }