コード例 #1
0
        public void carregaPerfisDaPasta()
        {
            escreveLog("Carregando perfis da pasta");
            string[] pastas = Directory.GetDirectories("C:\\Users\\");

            foreach (string valor in pastas)
            {
                string[] valorDividido = valor.Split('\\');

                if (!listaExcecoes.Contains(valorDividido[2]))
                {
                    PerfilMicro perfilEncontrado = listaPerfis.Find(p => p.NomePerfil == valorDividido[2]);
                    if (perfilEncontrado != null)
                    {
                        perfilEncontrado.FolderPath = valor;
                    }
                    else
                    {
                        PerfilMicro novoPerfil = new PerfilMicro(valorDividido[2]);
                        novoPerfil.FolderPath = valor;
                        listaPerfis.Add(novoPerfil);
                    }
                }
            }
        }
コード例 #2
0
        public void carregaPerfisDoRegistro()
        {
            escreveLog("Carregando Perfis do registro");
            RegistryKey chave = Registry.LocalMachine.OpenSubKey(PROFILE_LIST, false);


            String[] chaves = chave.GetSubKeyNames();

            foreach (String item in chaves)
            {
                RegistryKey subchave = Registry.LocalMachine.OpenSubKey(PROFILE_LIST + "\\" + item);

                string valor = (string)subchave.GetValue("ProfileImagePath");
                if (valor.Contains("C:\\Users"))
                {
                    string[] valorDividido = valor.Split('\\');

                    if (!listaExcecoes.Contains(valorDividido[2]))
                    {
                        PerfilMicro perfilEncontrado = listaPerfis.Find(p => p.NomePerfil == valorDividido[2]);
                        if (perfilEncontrado != null)
                        {
                            perfilEncontrado.Registry = item;
                        }
                        else
                        {
                            PerfilMicro novoPerfil = new PerfilMicro(valorDividido[2]);
                            novoPerfil.Registry = item;
                            listaPerfis.Add(novoPerfil);
                        }
                    }
                }
            }
        }
コード例 #3
0
 void BtnDesmarcarTodosClick(object sender, EventArgs e)
 {
     for (int i = 0; i < this.checkedListBoxPerfisMicro.Items.Count; i++)
     {
         PerfilMicro obj = (PerfilMicro)checkedListBoxPerfisMicro.Items[i];
         checkedListBoxPerfisMicro.SetItemChecked(i, false);
     }
 }
コード例 #4
0
        public void removerPerfil(PerfilMicro perfil)
        {
            escreveLog("Removendo perfil: " + perfil.NomePerfil);


            if (perfil.Registry != null)
            {
                escreveLog("Tem registros do windows, tentando deletar");
                DeleteRegistry(perfil);
            }

            escreveLog("Perfil " + perfil.NomePerfil + " removido com sucesso...");
        }
コード例 #5
0
        public void DeleteRegistry(PerfilMicro perfil)
        {
            escreveLog("Removendo registro do perfil: " + perfil.NomePerfil);

            if (perfil.Registry != null)
            {
                escreveLog("Tem registros do windows, tentando deletar");
                try {
                    Debug.WriteLine(perfil.Registry);
                    RegistryKey chave = Registry.LocalMachine.OpenSubKey(PROFILE_LIST, true);
                    chave.DeleteSubKey(perfil.Registry);
                    escreveLog("Removeu registro do windows");
                } catch (Exception e) {
                    escreveLog("Erro ao excluir registro do windows da chave: " + perfil.NomePerfil);
                    escreveLog(e.Message);
                }
            }
        }
コード例 #6
0
        public void carregaPerfisDaPasta()
        {
            escreveLog("Carregando perfis da pasta");
            string[] pastas = Directory.GetDirectories("C:\\Users\\");

            foreach(string valor in pastas){
                string[] valorDividido = valor.Split('\\');

                if(!listaExcecoes.Contains(valorDividido[2])){
                    PerfilMicro perfilEncontrado = listaPerfis.Find(p => p.NomePerfil == valorDividido[2]);
                    if(perfilEncontrado != null){
                        perfilEncontrado.FolderPath = valor;
                    }else{
                        PerfilMicro novoPerfil = new PerfilMicro(valorDividido[2]);
                        novoPerfil.FolderPath = valor;
                        listaPerfis.Add(novoPerfil);
                    }
                }
            }
        }
コード例 #7
0
        public void carregaPerfisDoRegistro()
        {
            escreveLog("Carregando Perfis do registro");
            RegistryKey chave =  Registry.LocalMachine.OpenSubKey(PROFILE_LIST,false);

            String[] chaves = chave.GetSubKeyNames();

            foreach(String item in chaves){
                RegistryKey subchave = Registry.LocalMachine.OpenSubKey(PROFILE_LIST + "\\" + item);

                string valor = (string)subchave.GetValue("ProfileImagePath");
                if(valor.Contains("C:\\Users")){
                    string[] valorDividido = valor.Split('\\');

                    if(!listaExcecoes.Contains(valorDividido[2])){
                        PerfilMicro perfilEncontrado = listaPerfis.Find(p => p.NomePerfil == valorDividido[2]);
                        if(perfilEncontrado != null){
                            perfilEncontrado.Registry = item;
                        }else{
                            PerfilMicro novoPerfil = new PerfilMicro(valorDividido[2]);
                            novoPerfil.Registry = item;
                            listaPerfis.Add(novoPerfil);
                        }
                    }
                }
            }
        }
コード例 #8
0
        public void removerPerfil(PerfilMicro perfil)
        {
            escreveLog("Removendo perfil: " + perfil.NomePerfil);

            if(perfil.Registry != null){
                escreveLog("Tem registros do windows, tentando deletar");
                DeleteRegistry(perfil);
            }

            escreveLog("Perfil "+ perfil.NomePerfil + " removido com sucesso..." );
        }
コード例 #9
0
        public void DeleteRegistry(PerfilMicro perfil)
        {
            escreveLog("Removendo registro do perfil: " + perfil.NomePerfil);

            if(perfil.Registry != null){
                escreveLog("Tem registros do windows, tentando deletar");
                try {
                    Debug.WriteLine(perfil.Registry);
                    RegistryKey chave =  Registry.LocalMachine.OpenSubKey(PROFILE_LIST,true);
                    chave.DeleteSubKey(perfil.Registry);
                    escreveLog("Removeu registro do windows");
                } catch (Exception e) {
                    escreveLog("Erro ao excluir registro do windows da chave: " + perfil.NomePerfil);
                    escreveLog(e.Message);
                }
            }
        }