public void SetUp() { // test user _testUser = new Netapi32.USER_INFO_1(); _testUser.usri1_name = "WaffleTestUser"; _testUser.usri1_password = Guid.NewGuid().ToString(); _testUser.usri1_priv = 1; _testUser.usri1_home_dir = null; _testUser.comment = "Waffle test user."; _testUser.usri1_script_path = null; int rc = Netapi32.NetUserAdd(null, 1, ref _testUser, 0); Assert.AreEqual(0, rc, new Win32Exception(rc).Message); // computer _computerName = Environment.MachineName; // fqn _testUserFqn = string.Format("{0}\\{1}", _computerName, _testUser.usri1_name); // join status IntPtr pDomain = IntPtr.Zero; rc = Netapi32.NetGetJoinInformation(null, out pDomain, out _joinStatus); Assert.AreEqual(Netapi32.NERR_Success, rc, new Win32Exception(rc).Message); _memberOf = Marshal.PtrToStringAuto(pDomain); Netapi32.NetApiBufferFree(pDomain); }