import CreateDirectory and FormatMessage : Windows API : Windows C# Source Code


Custom Search

C# Source Code » Windows » Windows API »

 

import CreateDirectory and FormatMessage








    
 

using System;
using System.Text;
using System.Runtime.InteropServices;

public class Starter {
    public static void Main() {
        bool resp = API.CreateDirectory(@"c*:\file.txt", IntPtr.Zero);
        if (resp == false) {
            StringBuilder message;
            int errorcode = Marshal.GetLastWin32Error();
            API.FormatMessage(API.FORMAT_MESSAGE_ALLOCATE_BUFFER | API.FORMAT_MESSAGE_FROM_SYSTEM | API.FORMAT_MESSAGE_IGNORE_INSERTS,IntPtr.Zero, errorcode,0, out message, 0, IntPtr.Zero);
            Console.WriteLine(message);
        }
    }
}

public class API {
    [DllImport("kernel32.dll", SetLastError = true)]
    public static extern bool CreateDirectory(string lpPathName, IntPtr lpSecurityAttributes);

    [DllImport("kernel32.dll", SetLastError = false)]
    public static extern System.Int32 FormatMessage(
        System.Int32 dwFlags,
        IntPtr lpSource,
        System.Int32 dwMessageId,
        System.Int32 dwLanguageId,
        out StringBuilder lpBuffer,
        System.Int32 nSize,
        IntPtr va_list);

    public const int FORMAT_MESSAGE_ALLOCATE_BUFFER = 256;
    public const int FORMAT_MESSAGE_IGNORE_INSERTS = 512;
    public const int FORMAT_MESSAGE_FROM_STRING = 1024;
    public const int FORMAT_MESSAGE_FROM_HMODULE = 2048;
    public const int FORMAT_MESSAGE_FROM_SYSTEM = 4096;
    public const int FORMAT_MESSAGE_ARGUMENT_ARRAY = 8192;
    public const int FORMAT_MESSAGE_MAX_WIDTH_MASK = 255;
}

 
    
   
  
   







HTML code for linking to this page:

Follow Navioo On Twitter

C# Source Code

 Navioo Windows
» Windows API