How To Reset Main Umbraco 7 Admin Password

using Umbraco.Core;
using Umbraco.Core.Events;
using Umbraco.Core.Logging;
using Umbraco.Core.Models;
using Umbraco.Core.Services;
using System;
using System.IO;
using System.Text;
using System.Configuration;
using umbraco.IO;

namespace Tmp.PasswordReset
{
     public class RegisterEvents : ApplicationEventHandler
     {
          protected override void ApplicationStarted(UmbracoApplicationBase 
                    umbracoApplication, ApplicationContext applicationContext)
          {
               UmbracoApplicationBase.ApplicationInit += ResetAdminPassword;
          }

          public void ResetAdminPassword(object sender, EventArgs e)
          {
               var userService = ApplicationContext.Current.Services.UserService;

               var adminUser = userService.GetUserById(0);
               adminUser.Username = adminUser.Email = "hello@umbraco.org";
               adminUser.FailedPasswordAttempts = 0;
               adminUser.IsLockedOut = false;
               adminUser.IsApproved = true;
               userService.SavePassword(adminUser, "123Qwe!");
          }
     }
}