private void registerFileType_Click(object sender, EventArgs e)
        {
            if (SG.Utilities.Forms.Elevation.IsElevationRequired && !SG.Utilities.Forms.Elevation.IsElevated)
            {
                // Superugly hack and potential dangerous because of the command length size limit.
                // Correct would be to use the pipes for communication, but I don't care right now.

                System.IO.MemoryStream mem = new System.IO.MemoryStream();

                byte[] blob = Encoding.UTF8.GetBytes(textBoxExt.Text);
                byte[] len  = BitConverter.GetBytes(blob.Length);
                mem.Write(len, 0, len.Length);
                mem.Write(blob, 0, blob.Length);

                blob = Encoding.UTF8.GetBytes(textBoxDescription.Text);
                len  = BitConverter.GetBytes(blob.Length);
                mem.Write(len, 0, len.Length);
                mem.Write(blob, 0, blob.Length);

                blob = Encoding.UTF8.GetBytes(textBoxIconPath.Text);
                len  = BitConverter.GetBytes(blob.Length);
                mem.Write(len, 0, len.Length);
                mem.Write(blob, 0, blob.Length);

                blob = Encoding.UTF8.GetBytes(textBoxOpenCommand.Text);
                len  = BitConverter.GetBytes(blob.Length);
                mem.Write(len, 0, len.Length);
                mem.Write(blob, 0, blob.Length);

                mem.Position = 0;
                string regData = Convert.ToBase64String(mem.ToArray());

                if (SG.Utilities.Forms.Elevation.RestartElevated("?#FILEREG " + regData + " " + Handle.ToString()) == int.MinValue)
                {
                    MessageBox.Show("Failed to start elevated Process. Most likely a security conflict.", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                FileTypeRegistration.RegisterDataFileType(this, textBoxExt.Text, textBoxDescription.Text, textBoxIconPath.Text, textBoxOpenCommand.Text);
            }
        }