Search
Module:
Directory

   Desktop Functions:

   Smart Device Functions:


Show Recent Changes
Subscribe (RSS)
Misc. Pages
Comments
FAQ
Helpful Tools
Playground
Suggested Reading
Website TODO List
Support Forum
Download Visual Studio Add-In

Terms of Use
Privacy Policy
Playground (misc)
 
.

A

B

C

D

Happy New Year !!!!!!!!!

If we are testing things, we might as well have some fun doing it...

Here's a Snowman story someone sent me in PowerPoint. I put it on my site:

http://www.wakp.com/snowman_1.pps ...a Snowman Story

Happy New Year!

Enjoy!

Jim

Just another test

"This is actualy easy!"

and now formatting
like this? OH YEAAHHHH

Wow! This is truly....stupid

Summary
A scratch pad to practice editing and have fun!

Thanks for the great site but I'll add my vote for Firefox support.

testing testin one two three ! 4, 5, 6 ... geeeeeeks!

Codelaboratory.com

Μιλατε Ελληνικά;;;;;

Why no Firefox support?

wow this is almsot excitingasd

By the Rio Grande they dance no sarabande!

Utku KAYA

BONJOUR !!!!!!!!!!!!!!!!!!!!!!!!!!!

:Pcgbcvbcvbcvbc

looks easy! - yes it is!

Freaky.

Абе явно може )

Поздрави

really interesting website

groliferation: [hello]

deneme son ki üç hayda bre

Hi! My name is Alan, I live in Brighton, UK I came to this site via The Channel 9 Video. Catch you later guys!

fffff

just a test!

hmmmmm, donuts.

Cheese is the BOMB!!!

prova

* prova

testing 1, 2, 3

What is this life if full of care,

We have no time to stand and stare.

Header

test

hi there.

Edit

My favorite unmanaged api is DestroyWindow.

Love, Mom

testing, testing, yet another test

My Test

Hello World!

Pretty cool

bla bla

This is really coooooool I cannot believe this !!! - atulatulatul

PInvoke CreateProcess

http://www.sayala.com/code.aspx?file=CreateProcess.cs

woohoo

m000000

wtf m8

using System;

using System.Runtime.InteropServices;

using System.Diagnostics;

namespace Snippets

{

    [StructLayout(LayoutKind.Sequential)]
    public struct PROCESS_INFORMATION
    {
    public int hProcess;
    public int hThread;
    public int dwProcessId;
    public int dwThreadId;
    }

    [StructLayout(LayoutKind.Sequential)]
    public struct STARTUPINFO
    {
    public int cb;
    public string lpReserved;
    public string lpDesktop;
    public string lpTitle;
    public int dwX;
    public int dwY;
    public int dwXSize;
    public int dwYSize;
    public int dwXCountChars;
    public int dwYCountChars;
    public int dwFillAttribute;
    public int dwFlags;
    public short wShowWindow;
    public short cbReserved2;
    public int lpReserved2;
    public int hStdInput;
    public int hStdOutput;
    public int hStdError;
    }

    class Code
    {
    [DllImport("kernel32.dll")]
    static extern bool CreateProcess(string lpApplicationName,
                    string lpCommandLine,
                    IntPtr lpProcessAttributes,
                    IntPtr lpThreadAttributes,
                    bool bInheritHandles,
                    uint dwCreationFlags,
                    IntPtr lpEnvironment,
                    string lpCurrentDirectory,
                    [In] ref STARTUPINFO lpStartupInfo,
                    out PROCESS_INFORMATION lpProcessInformation);

    [DllImport("kernel32.dll")]
    static extern bool GetExitCodeProcess(IntPtr hProcess, out uint lpExitCode);

    private static int STARTF_USESHOWWINDOW    =    0x00000001;
    private static int STARTF_FORCEONFEEDBACK    = 0x00000040;
    private static uint NORMAL_PRIORITY_CLASS =    0x00000020;
    private static short SW_SHOW = 5;

    [STAThread]
    static void Main(string[] args)
    {

        PROCESS_INFORMATION pi = new PROCESS_INFORMATION();
        STARTUPINFO si = new STARTUPINFO();
        //Optional Startup Information.
        si.cb = Marshal.SizeOf(si.GetType());
        //Specially useful when Launching Apps from a non-interactive Service.
        si.lpDesktop = @"WinSta0\Default";
        si.dwFlags = STARTF_USESHOWWINDOW | STARTF_FORCEONFEEDBACK;
        si.wShowWindow = SW_SHOW;
        CreateProcess(null,
            @"C:\WINDOWS\notepad.exe",
            IntPtr.Zero,
            IntPtr.Zero,
            true,
            NORMAL_PRIORITY_CLASS,
            IntPtr.Zero,
            null,
            ref si,
            out pi);

        //Not necessary if you dont want to wait on the process to exit.
        Process p = Process.GetProcessById(pi.dwProcessId);
        //Wait for the process to exit.
        p.WaitForExit();
        uint exitCode;
        GetExitCodeProcess(new IntPtr(pi.hProcess),out exitCode);
        Console.WriteLine("Exit Code: {0}",exitCode.ToString());

    }
    }

}

 
Access PInvoke.net directly from VS:
Terms of Use
Find References
Show Printable Version
Revisions