Exemplo n.º 1
0
 /// <summary>
 /// Add a global atom name
 /// </summary>
 /// <param name="name">The name to add</param>
 /// <param name="flags">Flags for the add.</param>
 /// <param name="throw_on_error">True to throw on error.</param>
 /// <returns>A reference to the atom</returns>
 public static NtResult <NtAtom> Add(string name, AddAtomFlags flags, bool throw_on_error)
 {
     if (flags == AddAtomFlags.None)
     {
         return(NtSystemCalls.NtAddAtom(name + "\0", (name.Length + 1) * 2,
                                        out ushort atom).CreateResult(throw_on_error, () => new NtAtom(atom, true)));
     }
     else
     {
         return(NtSystemCalls.NtAddAtomEx(name + "\0", (name.Length + 1) * 2,
                                          out ushort atom, flags).CreateResult(throw_on_error, () => new NtAtom(atom, true)));
     }
 }
Exemplo n.º 2
0
 /// <summary>
 /// Add a global atom name
 /// </summary>
 /// <param name="name">The name to add</param>
 /// <param name="flags">Flags for the add.</param>
 /// <returns>A reference to the atom</returns>
 public static NtAtom Add(string name, AddAtomFlags flags)
 {
     return(Add(name, flags, true).Result);
 }
Exemplo n.º 3
0
 public static extern NtStatus NtAddAtomEx(string String, int StringLength, out ushort Atom, AddAtomFlags Flags);