Arquivos

Posts Tagged ‘c’

Alterar proprierades de usuário do AD com c++

dezembro 16, 2013 2 comentários

Segue um código que deve ser adaptado, o mesmo serve para alterar as propriedades de um usuário do AD com c++.

Enjoy!

<br />try{<br />String^ __path = "LDAP://Adatum.com/CN=USERS,DC=Adatum,DC=com";<br />DirectoryEntry^ parentEntry = gcnew    DirectoryEntry(__path );<br />DirectorySearcher^ search = gcnew DirectorySearcher(parentEntry);<br />search-&gt;Filter = "(SAMAccountName=fulano)";<br />SearchResult^ result = search-&gt;FindOne();<br />DirectoryEntry^ user = result-&gt;GetDirectoryEntry();<br />user-&gt;Properties["userAccountControl"]-&gt;Value = "514";<br />user-&gt;CommitChanges();<br /><br />} catch (Exception ^err) {<br />//(err-&gt;Message);<br />}<br />
Categorias.net, C#, C++ Tags:, , ,

Rodando um comando PowerShell com Visual C++

novembro 22, 2013 1 comentário

Segue um código que pode ser útil, efetuando adaptações necessárias:

try{
this-&gt;outLog-&gt;Text = this-&gt;outLog-&gt;Text + "\nHabilitando mailbox para " + this-&gt;userTxt-&gt;Text;
			
RunspaceConfiguration ^runspaceConfig = RunspaceConfiguration::Create();
Runspace ^runspace = RunspaceFactory::CreateRunspace(runspaceConfig);
// open it
runspace-&gt;Open();

Pipeline ^pipeline = runspace-&gt;CreatePipeline();
// este é o script que vou executar, repare que é um do Exchange
String ^scriptText2007 = "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\PowerShell.exe -command \". 'C:\\Program Files\\Microsoft\\Exchange Server\\V14\\bin\\RemoteExchange.ps1'; Connect-ExchangeServer -auto; Enable-Mailbox -Identity 'corprd.bradesco.com.br/Users/" + this-&gt;userTxt-&gt;Text + "' -Alias '" + this-&gt;userTxt-&gt;Text + "'\"";
//String ^scriptText2007 = C:\\bats\\teste2.ps1;

pipeline-&gt;Commands-&gt;AddScript(scriptText2007);

Collection ^results = pipeline-&gt;Invoke();
			
runspace-&gt;Close();

StringBuilder^ stringBuilder = gcnew StringBuilder(); 
for (int i = 0; i Count; i++ ) { 
    stringBuilder-&gt;AppendLine(results[i]-&gt;ToString());
}
this-&gt;outLog-&gt;Text = this-&gt;outLog-&gt;Text + "\nParseou resultados";
IntPtr result = Marshal::StringToBSTR(results-&gt;ToString());
String ^answer= stringBuilder-&gt;ToString(); 
IntPtr ptr = Runtime::InteropServices::Marshal::StringToBSTR(answer);
this-&gt;outLog-&gt;Text = this-&gt;outLog-&gt;Text + answer;

} catch (Exception ^err) {
			this-&gt;outLog-&gt;Text = this-&gt;outLog-&gt;Text + "\nERRO Habilitar MailBox";
			IntPtr msg = Marshal::StringToBSTR(err-&gt;Message);
			this-&gt;outLog-&gt;Text = this-&gt;outLog-&gt;Text + err-&gt;Message;
}

Enjoy!

CategoriasC++, PowerShell, Windows Tags:,

Validar um usuário no Active Directory no C#

Tive a necessidade de autenticar um usuário em um Active Directory a partir de uma aplicação Web C#. Meu código ficou assim:


bool valid = false;
try
{
  // create a "principal context" - e.g. your domain (could be machine, too)
  using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, "SEU DOMINIO"))
  {
    // validate the credentials
    valid = pc.ValidateCredentials(username, password);
  }
}
catch (Exception ex)
{
  WriteLog("Erro de acesso ao DB: " + ex.Message);
}
return valid;

Simples e funcional.

Categorias.net Tags:, , , , ,

Iniciando um processo no C# com outro usuário

Estava precisando executar um comando no Windows utilizando rundll32 como um usuário diferente do ligado na estação, e encontramos dois ótimos links bem direto ao ponto. Aí vão :

http://stackoverflow.com/questions/4624113/how-to-process-start-with-impersonated-domain-user

http://weblogs.asp.net/hernandl/archive/2005/12/02/startprocessasuser.aspx

Enjoy

CategoriasC# Tags:

Site com exemplos práticos para várias linguagens

Se você assim como eu gosta de ver exemplost práticos, e acaba entendendo mais vendo algo funcional, sugiro que vá até este site: http://www.java2s.com/

Embora o mesmo tenha o nome de java2s, lá você encontrará exemplos aplicáveis a várias linguagens e tecnologias, por exemplo .net, C, c++, Oracle, etc, etc…

Ótimo bookmark! Enjoy!

CategoriasDiversos, JAVA Tags:, , , ,
Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 149 outros seguidores