Estoy intentando hacer una aplicación q me permita obtener el nombre del grupo de trabajo y poder modificarlo sin mayor problema mediante el codigo, ya consulte mediante registro y no se puede, alguien q me colabores gracias...
Este puede ser un ejemplo, creo que solo funciona en .NET 4:
using System;
using System.Management;
ManagementObject manage = new ManagementObject(string.Format("Win32_ComputerSystem.Name='{0}'", Environment.MachineName));
object[] args = { "WorkgroupName", null, null, null };
manage.InvokeMethod("JoinDomainOrWorkgroup", args);
Te dejo la lista entera de los métodos de la clase ManagementObject (http://msdn.microsoft.com/en-us/library/system.management.managementobject.aspx).
Gracias voy a probar... y te cuento si me sirvio
Cita de: yesidtaz en 28 Mayo 2011, 20:59 PM
Gracias voy a probar... y te cuento si me sirvio
No entiendo porqué hiciste la misma pregunta 2 veces si ya te la habían respondido, si es por lo que te dije que iba en .NET, no es tu culpa haber cometido el error 1 vez, es culpa de los moderadores no haberlo movido.
De todos modos, la manera más "ética" por decir así es la respuesta que te dió madpitbull_99, ya que... implementa las clases que .NET nos da, pero si bien la mía no es tan "no ética" :xD, y no requiere de .NET Framework 4.
using System.Runtime.InteropServices;
[DllImport("kernel32.dll")]
static extern bool SetComputerName(string lpComputerName);
public static void Main()
{
bool Editado = SetComputerName("NuevoNombreDeComputador");
if (Editado)
Console.WriteLine("Se ha cambiado el nombre del computador, sin embargo los cambios tendran efecto despues del siguiente reinicio.");
else
Console.WriteLine("No se puede cambiar el nombre de computador, necesita permisos de administrador.");
}
Gruß.
Cita de: Krähne en 28 Mayo 2011, 21:57 PM
No entiendo porqué hiciste la misma pregunta 2 veces si ya te la habían respondido, si es por lo que te dije que iba en .NET, no es tu culpa haber cometido el error 1 vez, es culpa de los moderadores no haberlo movido.
De todos modos, la manera más "ética" por decir así es la respuesta que te dió madpitbull_99, ya que... implementa las clases que .NET nos da, pero si bien la mía no es tan "no ética" :xD, y no requiere de .NET Framework 4.
using System.Runtime.InteropServices;
[DllImport("kernel32.dll")]
static extern bool SetComputerName(string lpComputerName);
public static void Main()
{
bool Editado = SetComputerName("NuevoNombreDeComputador");
if (Editado)
Console.WriteLine("Se ha cambiado el nombre del computador, sin embargo los cambios tendran efecto despues del siguiente reinicio.");
else
Console.WriteLine("No se puede cambiar el nombre de computador, necesita permisos de administrador.");
}
Gruß.
eso es para el nombre de la computadora, no para el grupo de trabajo...
@seba123neo: Cierto, leí mal el título del tema :P... la solución de madpitbull_99 es la correcta.
Disculpas por el error ;D.