quarta-feira, 25 de janeiro de 2017

Erro: iCCP: Not recognizing known sRGB profile that has been edited - Xamain

Boa tarde!
Para tratar o erro: iCCP: Not recognizing known sRGB profile that has been edited, que ocorre normalmente quando uma imagem está com problemas em sua estrutura faça o seguinte:

1- baixar o pacote 
  • PNGoo — Windows GUI for batch conversion no site: https://pngquant.org/
2 - Descompactar abrir o programa, selecionar a imagem (add Files) em sua pasta de origem, no PNGoo, marcar o primeiro Output, clicar em GO!

3 - Recompilar, e problema resolvido.

att.

sexta-feira, 20 de janeiro de 2017

Erro Maquinas Virtuais: Could not launch 'VS Emulator 5" KitKat (4.4) XXHDPI Phone' device. Exit code 10

Bom dia!

Tive o Seguinte erro ao executar uma maquina virtual para teste de programa criado no Visual Studio 2015, e entre varias buscas no meu caso, Ocorreu que uma maquina outrora aberta não havia sido desligada corretamente.

Ao abrir o  Hyper-V, constatei esta situação e encerrei manualmente, retornando os funcionamentos e dando possibilidade aos testes.

Espero ter ajudado.


terça-feira, 3 de maio de 2016

Uma Ajuda.

Olá a Todos!!

Segue, no minimo interessante e um apoio para construção de algum programa:

http://temdetudoprogramas.com/item/Codigo-Fontes-em-Java-do-sistema-de--Nota-Fiscal-Eletronica.html

abraço a todos.


terça-feira, 17 de novembro de 2015

Replicação Transacional - erro: Script falhou para Tabela 'dbo.sysdiagrams'.

Olá,
Direto ao ponto:

Tive um problema ao gerar uma replicação no SQL Server 2008, onde era apresentada a seguinte mensagem ao executar o agente Snapshot: Script falhou para Tabela 'dbo.sysdiagrams'.

Após verificar e buscar informações foi observado que a base de dados foi importada de um ambiente Sql Server 2005 para 2008, e esta veio com as opções de compatibilidade como Sql Server 2000 (80):


Havendo a necessidade de alterar para SQL Server 2008 (100):


Desta forma vindo o agente a funcionar sem problemas.

Até Mais

terça-feira, 20 de outubro de 2015

Verificar versão do SQL Server

Para Verificar a Versão do SQL SERVER, executar:
SELECT @@version
, SERVERPROPERTY (‘productlevel’)
, SERVERPROPERTY(‘productversion’)
, SERVERPROPERTY (‘edition’)
, @@version

Att.

sábado, 14 de setembro de 2013

"Aquele que você mais critica, é quem Deus mais está amando!"

14:00hs - estava olhando, contemplando o Mistério da da Cruz de Cristo neste momento e resolvi partilhar o que senti:
- Fizeram grupos separados para discutir o que fazer com esse tal Jesus!
- Pegaram suas palavras, que buscava criar nas pessoas um coração, e transformaram contra ele, de forma a ser julgado por isso.
- Muitas linguás que em um momento o proclamaram Rei, no segundo momento, envenenados, o condenaram a morte.
- Muitos dos que conspiraram, eram como eu, iam no templo orar, até pregavam, até jejuavam.....
- Muitos que não aceitaram "Amar ao Próximo como a ti mesmo", eram como eu, abraçando e dando atenção a quem interessa, quem pouco interessa ouvir, pouco se da tempo.
- O traidor, era como eu, caminhava junto, ouvia a vós do Mestre, sabia que sua vinda era para "Libertar os cativos".
- muitos dos que cuspiram em Jesus, são como eu, em um momento diz que o Ama, mas em outro, principalmente quando o irmão tem que ser amado, esta com a saliva a postos.
MAS......................!!!!
- Mas alguns foram como São Paulo, caiu do cavalo, e abriu os olhos para Jesus!
- Alguns entenderam de tal forma que deixaram um legado, olhe São Francisco de Assis, Madre Tereza.
- Alguns entenderam de tal forma que hoje amam primeiro seu inimigo e depois os amigos.
- Teve alguns que entenderam, e isso que imagino alegrar o coração do Crucificado!
- Entenderam que hoje se reúnem em torno dele para orar e não difamar ninguém, mas sim para incluir.
- Pegam Sua Palavra e a multiplicam em gestos, e por pessoas que na maior parte das vezes estão sub julgando.
- Muitos entenderam e conspiram para que outros entendam.
- Muitos "Amam o próximo mais que a si mesmo", e entenda como próximo aquele que mais te da trabalho em...!
- Muitos estão traindo o MUNDO e suas formas de obrigar a ser, somente para estar aos Pés de Jesus, e como criança ser "Girado no ar"!
- Muitos gastam sua saliva, para elevar a Deus o irmão!!!!!!!!

"Aquele que você mais critica, é quem Deus mais está amando!"

terça-feira, 16 de julho de 2013

Grupo Pentaho de Goiás: Aplicativos da suite Pentaho e como se relacionam

Para iniciarmos no mundo Pentaho, ótima explicação.

Grupo Pentaho de Goiás: Aplicativos da suite Pentaho e como se relacionam: Uma das grandes dificuldades para alguém que começa a trabalhar com o Pentaho é entender o relacionamento entre os diversos aplicativos da s...

quinta-feira, 6 de dezembro de 2012

Teste Data Time C#


         
Testar formato de datas
 
            DateTime now = DateTime.Now;
            MessageBox.Show(now.ToString("d"));
            MessageBox.Show(now.ToString("D"));
            MessageBox.Show(now.ToString("f"));
            MessageBox.Show(now.ToString("F"));
            MessageBox.Show(now.ToString("g"));
            MessageBox.Show(now.ToString("G"));
            MessageBox.Show(now.ToString("m"));
            MessageBox.Show(now.ToString("M"));
            MessageBox.Show(now.ToString("o"));
            MessageBox.Show(now.ToString("O"));
            MessageBox.Show(now.ToString("s"));
            MessageBox.Show(string.Format("{0:yyyy-MM-ddTHH:mm:sszzz}", now));
            MessageBox.Show(now.ToString("T"));
            MessageBox.Show(now.ToString("u"));
            MessageBox.Show(now.ToString("U"));
            MessageBox.Show(now.ToString("y"));
            MessageBox.Show(now.ToString("Y"));

quinta-feira, 29 de novembro de 2012

Nota Técnica 2011 Cancelamento da NF da Nota Fiscal Eletrônica Manual de Integração 2011/006 NF-e como Evento Versão 1.00a Março 2012 - Contribuinte


Para ajudar quem está se preparando para  a nota de cancelamento como evendo
Gerando o arquivo em C#



///

        /// gera o arquivo xml para envio no evento
        ///
        /// diretorio a ser salvo o arquivo
        /// codigo da empresa
        /// tipo ambiente nfe
        /// numero da nota
        /// serie nfe
        /// vesão nfe
        /// justificativa digitada
        /// tipo do evento exemplo Carta de Correcao ou Cancelamento
        /// prefixo inicial do nome do arquivo exemplo CCE (Carta de Correcao) ou CNFE (cancelamento)
        private void GeraArquivoXmlEvento(string DiretorioEnviar, int idEmpresa
                    , int tpAmb, string NumNota, string Serie, string VersaoNF
                    , string Justificativa, string Evento, string prefixoInicialArquivo)
        {
            UTF8Encoding _utf8 = new UTF8Encoding();
            DataTable _infoNfe = new DataTable(); //informações da nfe
            int _seqEvento = 0;
            string _cnpjEmi = string.Empty, _caminhoxml = string.Empty, _tipoEvento = string.Empty;
            try
            {
                //retorna a nota fiscal
                _infoNfe =retorna um datatable contendo a nota fiscal;
                //formata cnpj
                _cnpjEmi = pega o cnpj do emitente da nota.ToString().Replace(".", "").Replace("-", "").Replace("/", "");
                //prepara caminho
                _caminhoxml = DiretorioEnviar + @"\" + prefixoInicialArquivo + _infoNfe.Rows[0]["chNFe"].ToString() + ".xml";
                //busca o tipo do evento
                _tipoEvento = TipoEvento(Evento);
                if (File.Exists(_caminhoxml))
                {
                    File.Delete(_caminhoxml);
                }

                int _i = RetornaSeqEvento(_infoNfe.Rows[0]["chNFe"].ToString(),Evento);
                _seqEvento = _i > 0 ? _i : 1;

                XmlTextWriter _xml = new XmlTextWriter(_caminhoxml, _utf8);

                _xml.WriteStartDocument();

                _xml.WriteStartElement("envEvento");
                if (tpAmb == 1)
                {
                    _xml.WriteStartAttribute("xmlns");
                    _xml.WriteString("http://www.portalfiscal.inf.br/nfe");
                    _xml.WriteEndAttribute();
                    _xml.WriteStartAttribute("versao");
                    _xml.WriteString("1.00");
                    _xml.WriteEndAttribute();
                }
                _xml.WriteStartElement("idLote");//num lote
                _xml.WriteString(_infoNfe.Rows[0]["idlote"].ToString());// numero lote
                _xml.WriteEndElement();

                _xml.WriteStartElement("evento");
                _xml.WriteStartAttribute("xmlns");
                _xml.WriteString("http://www.portalfiscal.inf.br/nfe");
                _xml.WriteEndAttribute();
                _xml.WriteStartAttribute("versao");
                _xml.WriteString("1.00");
                _xml.WriteEndAttribute();
                _xml.WriteStartElement("infEvento");
                _xml.WriteStartAttribute("Id");
                _xml.WriteString("ID" + _tipoEvento + _infoNfe.Rows[0]["chNFe"].ToString() + _seqEvento.ToString("00"));//
                _xml.WriteEndAttribute();
                #region itensInternos

                _xml.WriteStartElement("cOrgao");//num uf ibge
                _xml.WriteString(_infoNfe.Rows[0]["cUF"].ToString());// numero da UF ibge
                _xml.WriteEndElement();

                _xml.WriteStartElement("tpAmb");//num uf ibge
                _xml.WriteString(tpAmb.ToString());// numero da UF ibge
                _xml.WriteEndElement();

                _xml.WriteStartElement("CNPJ");//cnpj emitente
                _xml.WriteString(_cnpjEmi);//
                _xml.WriteEndElement();

                _xml.WriteStartElement("chNFe");//Chave da Nfe 44 posiçoes (nfe antes) NFexxx...
                _xml.WriteString(_infoNfe.Rows[0]["chNFe"].ToString());//
                _xml.WriteEndElement();

                _xml.WriteStartElement("dhEvento");//Serie NFe
                _xml.WriteString(string.Format("{0:yyyy-MM-ddTHH:mm:sszzz}", DateTime.Now));//
                _xml.WriteEndElement();

                _xml.WriteStartElement("tpEvento");//
                _xml.WriteString(_tipoEvento);//
                _xml.WriteEndElement();

                _xml.WriteStartElement("nSeqEvento");//
                _xml.WriteString(_seqEvento.ToString());//
                _xml.WriteEndElement();

                _xml.WriteStartElement("verEvento");//
                _xml.WriteString("1.00");// fixo por hora
                _xml.WriteEndElement();

                _xml.WriteStartElement("detEvento");//abre tag da descrição do envento
                _xml.WriteStartAttribute("versao");//versão
                _xml.WriteString("1.00");// fixo por hora
                _xml.WriteEndAttribute();

                _xml.WriteStartElement("descEvento");//descrição do tipo do envento
                _xml.WriteString(Evento);//
                _xml.WriteEndElement();
//define a mesnagem e campos conforme evento
                switch (Evento)
                {
                    case "Carta de Correcao":
                        /// a sequencia de um mesmo eventdo de cce não pode ser maior que 20 correções
                        if (_seqEvento < 20)
                        {
                            _xml.WriteStartElement("xCorrecao");//Justividativa escrita da cce
                            _xml.WriteString(_comp.RemoveSpecialCharactersXml(Justificativa, true));//
                            _xml.WriteEndElement();

                            _xml.WriteStartElement("xCondUso");//Justividativa escrita da cce
                            _xml.WriteString("A Carta de Correcao e disciplinada pelo paragrafo 1o-A do art. 7o do Convenio S/N," +
                                             " de 15 de dezembro de 1970 e pode ser utilizada para regularizacao de erro ocorrido " +
                                             "na emissao de documento fiscal, desde que o erro nao esteja relacionado com: I - as " +
                                             "variaveis que determinam o valor do imposto tais como: base de calculo, aliquota, " +
                                             "diferenca de preco, quantidade, valor da operacao ou da prestacao; II - a correcao de " +
                                             "dados cadastrais que implique mudanca do remetente ou do destinatario; III - a data de emissao ou de saida.");//
                            _xml.WriteEndElement();
                        }
                        else
                        {
                            throw new Exception("Sequência de correções ultrapassou o limite de 20 para esta nota");
                        }

                        break;
                    case "Cancelamento":
                        _xml.WriteStartElement("nProt");//Numero do protocolo quando aceita a nfe no sefaz
                        _xml.WriteString(_infoNfe.Rows[0]["nProt"].ToString());//
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("xJust");//Justividativa escrita do cancelmaento
                        _xml.WriteString(Justificativa);//
                        _xml.WriteEndElement();
                        break;
                }

                #endregion
                _xml.WriteEndElement();//detEvento
                _xml.WriteEndElement();//infEvento
                _xml.WriteEndElement();//Evento
                _xml.WriteEndElement();//envEvento

                _xml.Close();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                _infoNfe.Dispose();
            }
        }

Comentem se usarem...e melhorem também...
att
Fernando

quinta-feira, 30 de agosto de 2012

Usar Enter no DatagridView C#

Função para que no momento do enter voce possa pegar dados, enviar para uma variavel externa ao form e fechar o form de pesquisa.

esta função foi implementada no KeyDown do datagrid.
foi alterada a função edit para não usar o enter no caso.


private void dtgPesqCliente_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter && dtgPesqCliente.CurrentRow.Index != -1)
   {
      _Cliente._retNome = dtgPesqCliente.Rows[dtgPesqCliente.CurrentRow.Index ].Cells[1].Value.ToString();
      _Cliente._retCodigo = dtgPesqCliente.Rows[dtgPesqCliente.CurrentRow.Index].Cells[0].Value.ToString();
                this.Close();
     }
 }

att

Fernando

quarta-feira, 6 de junho de 2012

Nosso Cuidado

Paz e Bem da parte de nosso Senhor Jesus Cristo!

   Venho como pequeno irmão e hoje na unção de coordenador do Grupo de Oração de Pirapozinho, alertar e de certa forma atender um clamor do nosso Senhor.
   Tenho observado nas redes sociais, irmão e irmãs, principalmente jovens, que por algum motivo estão desatento a questão do testemunho, somos vistos pelas ruas e lugares como pessoas que possuem um Deus, sendo assim devemos de coração expressar este sentido de pertença neste mundo moderno e virtual onde não somos vistos fisicamente.
   Tudo o que professamos fisicamente deve ser professado também virtualmente nas nossas redes, chamo a atenção para o contra testemunho, para o compromisso de não levarmos irmãos a pecar com palavras, fotos ou qualquer tipo de imagem que colocamos nas redes.
   Lembremos sempre de que Jesus rogou ao pai para sempre estivéssemos com ele Eu rogo por elesnão rogo pelo mundomas por aqueles que me desteporque são teus”  João 17:9, 
   Vamos estar atentos para que possamos ser luzeiros para o mundo, como nos é dito em Filipenses 2:15 para que vos torneis irrepreensíveis e sinceros, filhos de Deus inculpáveis no meio de uma geração pervertida e corrupta, na qual resplandeceis como luzeiros no mundo.
   Rogo a Deus que em vossos corações sua palavra e promessas possam se tornar fecundas;

“vós, porém, sois raça eleita, sacerdócio real, nação santa, o povo de propriedade exclusiva de Deus, a fim de proclamardes as virtudes daquele que vos chamou das trevas para a sua maravilhosa luz; vós, sim, que, antes, não éreis povo, mas, agora, sois povo de Deus, que não tínheis alcançado misericórdia, mas, agora, alcançastes misericórdia.” (1 Pedro 2.9-10).

Fraternalmente, paz e bem a todos!
Do menor dos menores irmãos

quarta-feira, 21 de março de 2012

Funções DateTime C#


Funções para ser colocada em uma dll, onde pode ser útil em formatações na aplicação.

public string VerificaData(string data)
        {
            string retorno = string.Empty;
            //
            if (string.IsNullOrEmpty(data) || data == "00/00/0000 00:00:00")
                retorno = Convert.ToDateTime("01/01/1870").ToString();
            else
                retorno = Convert.ToDateTime(data).ToString();
            //
            return retorno;
        }

        public string FormatarData(DateTime Data)
        {
            return Data.ToString("yyyy/MM/dd");
        }

        public string FormatarData2(DateTime Data)
        {
            return Data.ToString("yyyy/MM/dd 00:00:000");
        }

Fernando.

terça-feira, 20 de março de 2012

Deletar .pdf ou .gif de um diretório


///


        /// deleta registros .pdf e .gif gerados para o envio das danfes aos clientes via email
        ///

        ///
caminho do diretório
        public static void DeletaPdfGif(string Diretorio)
        {
            DirectoryInfo d;
            try
            {
                //limpar arquivos no CaminhoXmlTemp com data < 3 meses da data de hoje;
                d = new DirectoryInfo(Diretorio);
                foreach (FileInfo item in d.GetFiles("*.pdf"))
                {                  
                    item.Delete();
                }
                foreach (FileInfo item in d.GetFiles("*.gif"))
                {
                    item.Delete();
                }
            }
            catch (Exception ex)
            {
                throw (ex);
            }
            finally
            {
                d = null;
            }
        }

quinta-feira, 8 de março de 2012

Inserir Try automático c#

digitar :
try e segurar a tecla tab por alguns segundos, o código aparecerá automaticamente.

abraços

segunda-feira, 20 de fevereiro de 2012

Não foi possível resolver o conflito de agrupamento entre ' ' e ' ' na operação equal to.

Equalizando collate para bancos difrentes no SQLServer.


select f.*,fu.*
from banco0.dbo.FUNCIONARIOS fu
inner join banco1.dbo.[FUNCIONARIOS] f
                       on f.REGISTRO = fu.MATRICULA  -- f.RG = fu.RG COLLATE Latin1_General_CS_AS

Com isso os bancos podem ter sido criados com collate diferentes mas consegue-se fazer verificações no campos string princiapalmente.

sábado, 18 de fevereiro de 2012

Oração para os dias de Retiro no Carnaval

      Em reparação aos pecados.

     Amabilíssimo Jesus, não é tanto para receber os vossos favores como para fazer coisa agradável ao vosso divino Coração, que quero nestes dias unir-me às almas que Vos amam, para Vos desagravar da ingratidão dos homens para convosco, ingratidão essa que foi também a minha, cada vez que pequei. Em compensação de cada ofensa que recebeis, quero oferecer-Vos todos os atos de virtude, todas as boas obras, que fizeram ou ainda farão todos os justos, que fez Maria Santíssima, que fizestes Vós mesmo, quando estáveis nesta terra. Entendo renovar esta minha intenção todas as vezes que nestes dias disser: Meu Jesus, misericórdia. – Ó grande Mãe de Deus e minha Mãe Maria, apresentai vós este humilde ato de desagravo a vosso Divino Filho, e por amor de seu sacratíssimo Coração obtende para a Igreja sacerdotes zelosos, que convertam grande número de pecadores.


Santo Afonso

fonte: http://www.cancaonova.com/portal/canais/formacao/internas.php?e=12675

terça-feira, 17 de janeiro de 2012

Gerar Arquivo Xml Inutilizacao NFE C#


///


        /// gera o arquivo xml para solicitar Inutilização da nfe., você precisara enviar algumas informações ///criando uma função que retorna o datatable com os dados necessários para gerar o arquivo.
        ///

        ///

        ///

        ///

        ///

        ///

        public void GerarArquivoXmlInutilizacao(string DiretorioEnviarInut,
            int idEmpresa, string NumNota, string Serie, string Justificativa)
        {
            UTF8Encoding _utf8 = new UTF8Encoding();
            string _cnpjEmi = string.Empty;

            DataTable _infoNfe = new DataTable(); //informações da nfe
            try
            {
                _infoNfe = this.RetornarNfeCabecVisCom(idEmpresa, NumNota, Serie);
                _cnpjEmi = _infoNfe.Rows[0]["CNPJ"].ToString().Replace(".", "").Replace("-", "").Replace("/", "");

                XmlTextWriter _xml = new XmlTextWriter(DiretorioEnviarInut +
                                                @"\NFe" + _cnpjEmi +
                                                _infoNfe.Rows[0]["sc_numnota"].ToString() +
                                                _infoNfe.Rows[0]["sc_serie"].ToString(), _utf8);
                _xml.WriteStartDocument();

                _xml.WriteStartElement("inutNFe");
                _xml.WriteStartAttribute("xsi:schemaLocation");
                _xml.WriteString("http://www.portalfiscal.inf.br/nfe inutNFe_v2.00.xsd");
                _xml.WriteEndAttribute();
                _xml.WriteStartAttribute("xmlns:xsi");
                _xml.WriteString("http://www.w3.org/2001/XMLSchema-instance");
                _xml.WriteEndAttribute();
                _xml.WriteStartAttribute("versao");
                _xml.WriteString("2.0");
                _xml.WriteEndAttribute();
                _xml.WriteStartAttribute("xmlns");
                _xml.WriteString("http://www.portalfiscal.inf.br/nfe");
                _xml.WriteEndAttribute();

                    #region infInut
                    _xml.WriteStartElement("infInut");
                    _xml.WriteStartAttribute("Id");
                    _xml.WriteString("ID" + _infoNfe.Rows[0]["SC_IDNFE"].ToString());
                    #region internos
                        _xml.WriteStartElement("tpAmb");//num uf ibge
                        _xml.WriteString(_infoNfe.Rows[0][""].ToString());// numero da UF ibge
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("xServ");//cnpj emitente
                        _xml.WriteString("INUTILIZAR");//
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("UF");//num uf ibge
                        _xml.WriteString(_infoNfe.Rows[0]["cUF"].ToString());// numero da UF ibge
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("ano");//ano da emissao da nota
                        _xml.WriteString(Convert.ToDateTime(_infoNfe.Rows[0]["dEmi"]).ToString("yy"));//
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("CNPJ");//cnpj emitente
                        _xml.WriteString(_infoNfe.Rows[0]["CNPJ"].ToString());//
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("mod");//Modelo nota
                        _xml.WriteString(_infoNfe.Rows[0][""].ToString());//
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("serie");//Serie da nfe
                        _xml.WriteString(Justificativa);//
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("nNFIni");//Numero nota inicio
                        _xml.WriteString(_infoNfe.Rows[0]["nNF"].ToString());//sem formatação
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("nNFFin");//Numero numero nota fim
                        _xml.WriteString(_infoNfe.Rows[0]["nNF"].ToString());//  sem formatação
                        _xml.WriteEndElement();

                        _xml.WriteStartElement("xJust");//Justificativa escrita da inutilização
                        _xml.WriteString(Justificativa);//
                        _xml.WriteEndElement();
                    #endregion
                    _xml.WriteEndElement();//infInut

                    #endregion

                _xml.WriteEndElement();//inutNFe

                _xml.Close();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                _infoNfe.Dispose();
            }
        }

segunda-feira, 5 de dezembro de 2011

Verifica se um datagrid esta carregado ou vazio.


Simples para facilitar algumas verificações.
///

        /// verifica se um datagrid esta carregado ou vazio
        ///

        /// passa o datagrid
        /// true para carregado e false para vazio
        private bool VerificaGrid(DataGridView dtg)
        {
            return (((DataTable)dtg.DataSource) != null && ((DataTable)dtg.DataSource).Rows.Count > 0);
        }
Podes ser colocado em uma classe publica a todos os form's.
Att

Fernando

terça-feira, 29 de novembro de 2011

Previne Injeção de SQL C# Sql Injection


Ola, segue uma ajuda, mas sempre teste antes.
        ///

        /// previne a insersão de selects que possam prejudicar o banco
        ///

        /// texto a ser verificado
        ///
        public bool PrevineSqlInjection(string texto)
        {
            string[] _Injecoes = { "drop", "select", "insert", "delete", "xp_", ";", "--" };
            try
            {
                foreach (string s in _Injecoes)
                {
                    if (texto.ToUpper().IndexOf(s.ToUpper()) >= 0)
                        return false;
                }
                return true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                _Injecoes = null;
            }
        }

Att

Fernando Valota