Como instalar e desinstalar serviços no Windows

Para instalar os serviços criados através do seu Visual Studio você poderá utilizar o installutil que está instalado na pasta do FrameWork.

Para acessar o InstallUtil você deve abrir seu Prompt de Comando (cmd) e acessar o caminho do FrameWork que foi desenvolvido o serviço, exemplo:

No caso do FrameWork 4.0 o arquivo deve estar em C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe caso a versão do seu Sistema Operacional seja Windows 32 bits. Para a versão de 64 bits do .NET Framework 4 ou 4.5.*, o caminho padrão é C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe.

Ao acessar o caminho você poderá instalar e desinstalar os serviços criados da seguinte forma:

Instalar: installutil “C:\caminho\<Projeto>.exe”
Remover: installutil -U “C:\caminho\<Projeto>.exe”

Simples 🙂

<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> .NET | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> , , , , , | Leave a comment

Listar Todas Base de Dados da instância SQL Server

Para exibir uma lista de bancos de dados em uma instância do SQL Server

  1. Conecte-se a instância de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta ou New Query.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em ExecutarEste exemplo retorna uma lista dos bancos de dados na instância do SQL Server. A lista inclui os nomes dos bancos de dados, suas IDs de banco de dados e as datas de criação dos bancos de dados.

 

SELECT name, database_id, create_date
FROM sys.databases ;

<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> SQL | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> | Leave a comment

Metodo Escrever em Arquivo Texto C#

Olá,

Abaixo um método básico para escrever em arquivo texto em C#

public void escreveArquivo(string dados)
{
string nome_arquivo = “C:/Temp/arquivo.txt”;

if (!System.IO.File.Exists(nome_arquivo))
System.IO.File.Create(nome_arquivo).Close();

System.IO.TextWriter arquivo = System.IO.File.AppendText(nome_arquivo);

arquivo.WriteLine(dados);
arquivo.Close();
}

<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> .NET | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> | Leave a comment

Alterar Texto do Toolbar do SharePoint com JQuery

Vezes necessitamos alterar algum texto de nossa Toolbar do SharePoint nativo ou por linguagem, etc.

No meu caso tinha uma toolbar personalizada e não gostaria de fazer o deploy novamente, também tive a necessidade de alterar a depender da linguagem selecionada, por tal motivo, utilizei do JQuery para realizar a alteração.

$(“ie\\:menuitem[text=’Mudar Senha’]”).attr(“text”, “Change Password”);

Neste caso Alterei o Texto “Mudar Senha” para Change Password.

– Atualizando…

No IE a solução à cima não funciona. Neste caso tive que tratar da seguinte forma:

$(“span”).children(1).children().each(function(){
if($(this).attr(“text”) == “Mudar Senha”){
$(this).attr(“text”, “Change Password”);
return;
}
});

 

<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> SharePoint | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> , | Leave a comment

Alterar Texto SPAN com JQuery

Lê a página e altera o SPAN que tem title ‘Open Menu’ para ‘My Action 2′. Muito útil e rápido

$(document).ready(function(){
$(“SPAN[title=’Open Menu’] A”).text(“My Actions 2”);

});

<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> .NET, SharePoint | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> , , | Leave a comment

C# Obter todos os usuários AD

Abaixo o código para obter todos os usuários do Active Directory (AD) do windows.

Além de printar na tela ele insere em um arquivo texto.

public void ObterUsuarioAD()
{
DirectoryEntry entry = new DirectoryEntry(“LDAP://SERVIDOR-AD”);

DirectorySearcher dSearch = new DirectorySearcher(entry);
dSearch.PageSize = 10000;
dSearch.SizeLimit = 10000;

dSearch.Filter = “(&(objectClass=user))”;

// get all entries from the active directory.
// Last Name, name, initial, homepostaladdress, title, company etc..
foreach (SearchResult sResultSet in dSearch.FindAll())
{
string dados = null;

// Login Name
Console.WriteLine(GetProperty(sResultSet, “cn”));
dados = dados + GetProperty(sResultSet, “cn”);

// First Name
Console.WriteLine(GetProperty(sResultSet, “givenName”));
dados = dados + GetProperty(sResultSet, “givenName”);

// Middle Initials
Console.Write(GetProperty(sResultSet, “initials”));
dados = dados + GetProperty(sResultSet, “initials”);

// Last Name
Console.Write(GetProperty(sResultSet, “sn”));
dados = dados + GetProperty(sResultSet, “sn”);
// Address
string tempAddress = GetProperty(sResultSet, “homePostalAddress”);
dados = dados + GetProperty(sResultSet, “homePostalAddress”);
if (tempAddress != string.Empty)
{
string[] addressArray = tempAddress.Split(‘;’);
string taddr1, taddr2;
taddr1 = addressArray[0];
Console.Write(taddr1);
taddr2 = addressArray[1];
Console.Write(taddr2);
//dados = dados +
}
// title
Console.Write(GetProperty(sResultSet, “title”));
dados = dados + GetProperty(sResultSet, “title”);

// company
Console.Write(GetProperty(sResultSet, “company”));
dados = dados + GetProperty(sResultSet, “company”);

//state
Console.Write(GetProperty(sResultSet, “st”));
dados = dados + GetProperty(sResultSet, “st”);

//city
Console.Write(GetProperty(sResultSet, “l”));
dados = dados + GetProperty(sResultSet, “l”);

//country
Console.Write(GetProperty(sResultSet, “co”));
dados = dados + GetProperty(sResultSet, “co”);

//postal code
Console.Write(GetProperty(sResultSet, “postalCode”));
dados = dados + GetProperty(sResultSet, “postalCode”);

// telephonenumber
Console.Write(GetProperty(sResultSet, “telephoneNumber”));
dados = dados + GetProperty(sResultSet, “telephoneNumber”);

//extention
Console.Write(GetProperty(sResultSet, “otherTelephone”));
dados = dados + GetProperty(sResultSet, “otherTelephone”);

//fax
Console.Write(GetProperty(sResultSet, “facsimileTelephoneNumber”));
dados = dados + GetProperty(sResultSet, “facsimileTelephoneNumber”);

// email address
Console.Write(GetProperty(sResultSet, “mail”));
dados = dados + GetProperty(sResultSet, “mail”);

// Challenge Question
Console.Write(GetProperty(sResultSet, “extensionAttribute1”));
dados = dados + GetProperty(sResultSet, “extensionAttribute1”);

// Challenge Response
Console.Write(GetProperty(sResultSet, “extensionAttribute2”));
dados = dados + GetProperty(sResultSet, “extensionAttribute2”);

//Member Company
Console.Write(GetProperty(sResultSet, “extensionAttribute3”));
dados = dados + GetProperty(sResultSet, “extensionAttribute3”);

// Company Relation ship Exits
Console.Write(GetProperty(sResultSet, “extensionAttribute4”));
dados = dados + GetProperty(sResultSet, “extensionAttribute4”);

//status
Console.Write(GetProperty(sResultSet, “extensionAttribute5”));
dados = dados + GetProperty(sResultSet, “extensionAttribute5”);

// Assigned Sales Person
Console.Write(GetProperty(sResultSet, “extensionAttribute6”));
dados = dados + GetProperty(sResultSet, “extensionAttribute6”);

// Accept T and C
Console.Write(GetProperty(sResultSet, “extensionAttribute7”));
dados = dados + GetProperty(sResultSet, “extensionAttribute7”);

// jobs
Console.Write(GetProperty(sResultSet, “extensionAttribute8”));
dados = dados + GetProperty(sResultSet, “extensionAttribute8”);

String tEamil = GetProperty(sResultSet, “extensionAttribute9”);
dados = dados + GetProperty(sResultSet, “extensionAttribute9”);

// email over night
if (tEamil != string.Empty)
{
string em1, em2, em3;
string[] emailArray = tEamil.Split(‘;’);
//em1 = emailArray[0];
//em2 = emailArray[1];
//em3 = emailArray[2];
//Console.Write(em1 + em2 + em3);

}
// email daily emerging market
Console.Write(GetProperty(sResultSet, “extensionAttribute10”));
dados = dados + GetProperty(sResultSet, “extensionAttribute10”);

if (!string.IsNullOrEmpty(GetProperty(sResultSet, “extensionAttribute10”)))
{
string matricula = GetProperty(sResultSet, “extensionAttribute10”);
}

// email daily corporate market
Console.Write(GetProperty(sResultSet, “extensionAttribute11”));
dados = dados + GetProperty(sResultSet, “extensionAttribute11”);

// AssetMgt Range
Console.Write(GetProperty(sResultSet, “extensionAttribute12”));
dados = dados + GetProperty(sResultSet, “extensionAttribute12”);

// date of account created
Console.Write(GetProperty(sResultSet, “whenCreated”));
dados = dados + GetProperty(sResultSet, “whenCreated”);

// date of account changed
Console.Write(GetProperty(sResultSet, “whenChanged”));
dados = dados + GetProperty(sResultSet, “whenChanged”);

string nome_arquivo = “C:/Temp/arquivo.txt”;

if (!System.IO.File.Exists(nome_arquivo))
System.IO.File.Create(nome_arquivo).Close();

System.IO.TextWriter arquivo = System.IO.File.AppendText(nome_arquivo);

arquivo.WriteLine(dados);
arquivo.Close();
}
}

public static string GetProperty(SearchResult searchResult, string PropertyName)
{
if (searchResult.Properties.Contains(PropertyName))
{
return searchResult.Properties[PropertyName][0].ToString();
}
else
{
return string.Empty;
}
}

 

 

<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> .NET | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> | Leave a comment

C# – Pegar todos usuarios cadastrado no AD

Em uma necessidade que tive de obter todos os usuários do AD, fiz algumas pesquisas no GOOGLE e encontrei uma boa referência e um código fácil de entender.

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.DirectoryServices;
using System.DirectoryServices.AccountManagement;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string groupName = “Domain Users”;
string domainName = “CORPORATE”; //Informar o nome do dominio

PrincipalContext ctx = new PrincipalContext(ContextType.Domain, domainName);
GroupPrincipal grp = GroupPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, groupName);
string nome_arquivo = “C:/Temp/arquivo.txt”;

if (!System.IO.File.Exists(nome_arquivo))
System.IO.File.Create(nome_arquivo).Close();

System.IO.TextWriter arquivo = System.IO.File.AppendText(nome_arquivo);

if (grp != null)
{
//int i = 0;
foreach (Principal p in grp.GetMembers(false))
{
Console.WriteLine(p.SamAccountName + ” – ” + p.DisplayName);
arquivo.WriteLine(p.SamAccountName + ” – ” + p.DisplayName);
//i++;

//if (i == 100)
//{
// Console.ReadLine();
//}
}

arquivo.Close();
grp.Dispose();
ctx.Dispose();
Console.ReadLine();
}
else
{
Console.WriteLine(“\nWe did not find that group in that domain, perhaps the group resides in a different domain?”);
Console.ReadLine();
}
}
}
}

 

<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> .NET | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> , | Leave a comment

C# – Criar e escrever em um arquivo txt

Vamos escolher onde criar o arquivo e qual nome daremos a ele.

string nomeArquivo = "C:/Temp/Arquivo.txt";

Se o arquivo não existir criamos o arquivo com o seguinte comando abaixo:


if (!System.IO.File.Exists(nomeArquivo)){
  System.IO.File.Create(nomeArquivo).Close();
}

Com a classe TextWriter escrevemos no arquivo.


System.IO.TextWriter arquivo = System.IO.File.AppendText(nomeArquivo);
arquivo.WriteLine("Teste de escrita no arquivo");

Fechamos o arquivo:

arquivo.Close();

Até a próxima!
<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> .NET | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> , | Leave a comment

Criando e chamando procedure MySQL

Sintaxe da criação de uma procedure no MySQL

DELIMITER $$

DROP PROCEDURE IF EXISTS `total_alunos` $$

CREATE PROCEDURE `total_alunos` ()
BEGIN
SELECT COUNT(*) FROM alunos;
END $$

DELIMITER ;

Para chamar através do PHP ou Query basta executar o call total_alunos()

Simples e prático 🙂

<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> MySQL | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> , | Leave a comment

Renomear Tabela MySQL

Prezados,

As vezes sentimos a necessidade de renomear uma tabela que já está em produção. Vezes por ser case sensitive ou por motivos diversos.

Facilmente poderemos renomear da seguinte forma:

RENAME TABLE tabela1 TO tabela2;

Abraço a todos.

<span class="entry-utility-prep entry-utility-prep-cat-links">Posted in</span> MySQL | <span class="entry-utility-prep entry-utility-prep-tag-links">Tagged</span> | Leave a comment