[Unlock] Bootloader unlock - Updated November 26th 2012

Search This thread

Dri94

Senior Member
Oct 9, 2011
2,058
645
Florida
adb doesnt find my phone. are there settings i have to make, not new to android but new to htc devices, and alos my first time with adb doing this.
 

Attachments

  • Capture.jpg
    Capture.jpg
    45.9 KB · Views: 928

forey79

Senior Member
Dec 21, 2010
130
41
viola,ks
just to clarify you push "adb install CIDGen.apk" while the phone is in fastboot usb then reboot the phone and run the CIDGen app then boot back into fastboot usb??
 

jonah1234

Senior Member
May 29, 2012
1,762
1,089
I'm getting this when trying to adb restore backup.ab

Code:
C:\android-sdk-windows-1.6_r1\tools>adb restore backup.ab
Android Debug Bridge version 1.0.22

 -d                            - directs command to the only connected USB devic
e
                                 returns an error if more than one USB device is
 present.
 -e                            - directs command to the only running emulator.
                                 returns an error if more than one emulator is r
unning.
 -s <serial number>            - directs command to the USB device or emulator w
ith
                                 the given serial number
 -p <product name or path>     - simple product name like 'sooner', or
                                 a relative/absolute path to a product
                                 out directory like 'out/target/product/sooner'.

                                 If -p is not specified, the ANDROID_PRODUCT_OUT

                                 environment variable is used, which must
                                 be an absolute path.
 devices                       - list all connected devices

device commands:
  adb push <local> <remote>    - copy file/dir to device
  adb pull <remote> <local>    - copy file/dir from device
  adb sync [ <directory> ]     - copy host->device only if changed
                                 (see 'adb help all')
  adb shell                    - run remote shell interactively
  adb shell <command>          - run remote shell command
  adb emu <command>            - run emulator console command
  adb logcat [ <filter-spec> ] - View device log
  adb forward <local> <remote> - forward socket connections
                                 forward specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)
  adb jdwp                     - list PIDs of processes hosting a JDWP transport

  adb install [-l] [-r] <file> - push this package file to the device and instal
l it
                                 ('-l' means forward-lock the app)
                                 ('-r' means reinstall the app, keeping its data
)
  adb uninstall [-k] <package> - remove this app package from the device
                                 ('-k' means keep the data and cache directories
)
  adb bugreport                - return all information from the device
                                 that should be included in a bug report.

  adb help                     - show this help message
  adb version                  - show version num

DATAOPTS:
 (no option)                   - don't touch the data partition
  -w                           - wipe the data partition
  -d                           - flash the data partition

scripting:
  adb wait-for-device          - block until device is online
  adb start-server             - ensure that there is a server running
  adb kill-server              - kill the server if it is running
  adb get-state                - prints: offline | bootloader | device
  adb get-serialno             - prints: <serial-number>
  adb status-window            - continuously print device status for a specifie
d device
  adb remount                  - remounts the /system partition on the device re
ad-write
  adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader or recovery program
  adb root                     - restarts adb with root permissions

networking:
  adb ppp <tty> [parameters]   - Run PPP over USB.
 Note: you should not automatically start a PPP connection.
 <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
 [parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync [ <directory> ]
  <localdir> can be interpreted in several ways:

  - If <directory> is not specified, both /system and /data partitions will be u
pdated.

  - If it is "system" or "data", only the corresponding partition
    is updated.

C:\android-sdk-windows-1.6_r1\tools>/adb restore backup.ab
'/adb' is not recognized as an internal or external command,
operable program or batch file.

C:\android-sdk-windows-1.6_r1\tools>adb restore backup.ab
Android Debug Bridge version 1.0.22

 -d                            - directs command to the only connected USB devic
e
                                 returns an error if more than one USB device is
 present.
 -e                            - directs command to the only running emulator.
                                 returns an error if more than one emulator is r
unning.
 -s <serial number>            - directs command to the USB device or emulator w
ith
                                 the given serial number
 -p <product name or path>     - simple product name like 'sooner', or
                                 a relative/absolute path to a product
                                 out directory like 'out/target/product/sooner'.

                                 If -p is not specified, the ANDROID_PRODUCT_OUT

                                 environment variable is used, which must
                                 be an absolute path.
 devices                       - list all connected devices

device commands:
  adb push <local> <remote>    - copy file/dir to device
  adb pull <remote> <local>    - copy file/dir from device
  adb sync [ <directory> ]     - copy host->device only if changed
                                 (see 'adb help all')
  adb shell                    - run remote shell interactively
  adb shell <command>          - run remote shell command
  adb emu <command>            - run emulator console command
  adb logcat [ <filter-spec> ] - View device log
  adb forward <local> <remote> - forward socket connections
                                 forward specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)
  adb jdwp                     - list PIDs of processes hosting a JDWP transport

  adb install [-l] [-r] <file> - push this package file to the device and instal
l it
                                 ('-l' means forward-lock the app)
                                 ('-r' means reinstall the app, keeping its data
)
  adb uninstall [-k] <package> - remove this app package from the device
                                 ('-k' means keep the data and cache directories
)
  adb bugreport                - return all information from the device
                                 that should be included in a bug report.

  adb help                     - show this help message
  adb version                  - show version num

DATAOPTS:
 (no option)                   - don't touch the data partition
  -w                           - wipe the data partition
  -d                           - flash the data partition

scripting:
  adb wait-for-device          - block until device is online
  adb start-server             - ensure that there is a server running
  adb kill-server              - kill the server if it is running
  adb get-state                - prints: offline | bootloader | device
  adb get-serialno             - prints: <serial-number>
  adb status-window            - continuously print device status for a specifie
d device
  adb remount                  - remounts the /system partition on the device re
ad-write
  adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader or recovery program
  adb root                     - restarts adb with root permissions

networking:
  adb ppp <tty> [parameters]   - Run PPP over USB.
 Note: you should not automatically start a PPP connection.
 <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
 [parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync [ <directory> ]
  <localdir> can be interpreted in several ways:

  - If <directory> is not specified, both /system and /data partitions will be u
pdated.

  - If it is "system" or "data", only the corresponding partition
    is updated.

C:\android-sdk-windows-1.6_r1\tools>
 

jcase

Retired Forum Mod / Senior Recognized Developer
Feb 20, 2010
6,308
15,761
Raleigh NC
Instructions say you need a newer (ICS or newer) version of adb update your tools

I'm getting this when trying to adb restore backup.ab

Code:
C:\android-sdk-windows-1.6_r1\tools>adb restore backup.ab
Android Debug Bridge version 1.0.22

 -d                            - directs command to the only connected USB devic
e
                                 returns an error if more than one USB device is
 present.
 -e                            - directs command to the only running emulator.
                                 returns an error if more than one emulator is r
unning.
 -s <serial number>            - directs command to the USB device or emulator w
ith
                                 the given serial number
 -p <product name or path>     - simple product name like 'sooner', or
                                 a relative/absolute path to a product
                                 out directory like 'out/target/product/sooner'.

                                 If -p is not specified, the ANDROID_PRODUCT_OUT

                                 environment variable is used, which must
                                 be an absolute path.
 devices                       - list all connected devices

device commands:
  adb push <local> <remote>    - copy file/dir to device
  adb pull <remote> <local>    - copy file/dir from device
  adb sync [ <directory> ]     - copy host->device only if changed
                                 (see 'adb help all')
  adb shell                    - run remote shell interactively
  adb shell <command>          - run remote shell command
  adb emu <command>            - run emulator console command
  adb logcat [ <filter-spec> ] - View device log
  adb forward <local> <remote> - forward socket connections
                                 forward specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)
  adb jdwp                     - list PIDs of processes hosting a JDWP transport

  adb install [-l] [-r] <file> - push this package file to the device and instal
l it
                                 ('-l' means forward-lock the app)
                                 ('-r' means reinstall the app, keeping its data
)
  adb uninstall [-k] <package> - remove this app package from the device
                                 ('-k' means keep the data and cache directories
)
  adb bugreport                - return all information from the device
                                 that should be included in a bug report.

  adb help                     - show this help message
  adb version                  - show version num

DATAOPTS:
 (no option)                   - don't touch the data partition
  -w                           - wipe the data partition
  -d                           - flash the data partition

scripting:
  adb wait-for-device          - block until device is online
  adb start-server             - ensure that there is a server running
  adb kill-server              - kill the server if it is running
  adb get-state                - prints: offline | bootloader | device
  adb get-serialno             - prints: <serial-number>
  adb status-window            - continuously print device status for a specifie
d device
  adb remount                  - remounts the /system partition on the device re
ad-write
  adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader or recovery program
  adb root                     - restarts adb with root permissions

networking:
  adb ppp <tty> [parameters]   - Run PPP over USB.
 Note: you should not automatically start a PPP connection.
 <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
 [parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync [ <directory> ]
  <localdir> can be interpreted in several ways:

  - If <directory> is not specified, both /system and /data partitions will be u
pdated.

  - If it is "system" or "data", only the corresponding partition
    is updated.

C:\android-sdk-windows-1.6_r1\tools>/adb restore backup.ab
'/adb' is not recognized as an internal or external command,
operable program or batch file.

C:\android-sdk-windows-1.6_r1\tools>adb restore backup.ab
Android Debug Bridge version 1.0.22

 -d                            - directs command to the only connected USB devic
e
                                 returns an error if more than one USB device is
 present.
 -e                            - directs command to the only running emulator.
                                 returns an error if more than one emulator is r
unning.
 -s <serial number>            - directs command to the USB device or emulator w
ith
                                 the given serial number
 -p <product name or path>     - simple product name like 'sooner', or
                                 a relative/absolute path to a product
                                 out directory like 'out/target/product/sooner'.

                                 If -p is not specified, the ANDROID_PRODUCT_OUT

                                 environment variable is used, which must
                                 be an absolute path.
 devices                       - list all connected devices

device commands:
  adb push <local> <remote>    - copy file/dir to device
  adb pull <remote> <local>    - copy file/dir from device
  adb sync [ <directory> ]     - copy host->device only if changed
                                 (see 'adb help all')
  adb shell                    - run remote shell interactively
  adb shell <command>          - run remote shell command
  adb emu <command>            - run emulator console command
  adb logcat [ <filter-spec> ] - View device log
  adb forward <local> <remote> - forward socket connections
                                 forward specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)
  adb jdwp                     - list PIDs of processes hosting a JDWP transport

  adb install [-l] [-r] <file> - push this package file to the device and instal
l it
                                 ('-l' means forward-lock the app)
                                 ('-r' means reinstall the app, keeping its data
)
  adb uninstall [-k] <package> - remove this app package from the device
                                 ('-k' means keep the data and cache directories
)
  adb bugreport                - return all information from the device
                                 that should be included in a bug report.

  adb help                     - show this help message
  adb version                  - show version num

DATAOPTS:
 (no option)                   - don't touch the data partition
  -w                           - wipe the data partition
  -d                           - flash the data partition

scripting:
  adb wait-for-device          - block until device is online
  adb start-server             - ensure that there is a server running
  adb kill-server              - kill the server if it is running
  adb get-state                - prints: offline | bootloader | device
  adb get-serialno             - prints: <serial-number>
  adb status-window            - continuously print device status for a specifie
d device
  adb remount                  - remounts the /system partition on the device re
ad-write
  adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader or recovery program
  adb root                     - restarts adb with root permissions

networking:
  adb ppp <tty> [parameters]   - Run PPP over USB.
 Note: you should not automatically start a PPP connection.
 <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
 [parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync [ <directory> ]
  <localdir> can be interpreted in several ways:

  - If <directory> is not specified, both /system and /data partitions will be u
pdated.

  - If it is "system" or "data", only the corresponding partition
    is updated.

C:\android-sdk-windows-1.6_r1\tools>
 

PVD04

Member
Jan 5, 2010
42
13
Madison, WI
I'm getting this when trying to adb restore backup.ab

Code:
C:\android-sdk-windows-1.6_r1\tools>adb restore backup.ab
Android Debug Bridge version 1.0.22

 -d                            - directs command to the only connected USB devic
e
                                 returns an error if more than one USB device is
 present.
 -e                            - directs command to the only running emulator.
                                 returns an error if more than one emulator is r
unning.
 -s <serial number>            - directs command to the USB device or emulator w
ith
                                 the given serial number
 -p <product name or path>     - simple product name like 'sooner', or
                                 a relative/absolute path to a product
                                 out directory like 'out/target/product/sooner'.

                                 If -p is not specified, the ANDROID_PRODUCT_OUT

                                 environment variable is used, which must
                                 be an absolute path.
 devices                       - list all connected devices

device commands:
  adb push <local> <remote>    - copy file/dir to device
  adb pull <remote> <local>    - copy file/dir from device
  adb sync [ <directory> ]     - copy host->device only if changed
                                 (see 'adb help all')
  adb shell                    - run remote shell interactively
  adb shell <command>          - run remote shell command
  adb emu <command>            - run emulator console command
  adb logcat [ <filter-spec> ] - View device log
  adb forward <local> <remote> - forward socket connections
                                 forward specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)
  adb jdwp                     - list PIDs of processes hosting a JDWP transport

  adb install [-l] [-r] <file> - push this package file to the device and instal
l it
                                 ('-l' means forward-lock the app)
                                 ('-r' means reinstall the app, keeping its data
)
  adb uninstall [-k] <package> - remove this app package from the device
                                 ('-k' means keep the data and cache directories
)
  adb bugreport                - return all information from the device
                                 that should be included in a bug report.

  adb help                     - show this help message
  adb version                  - show version num

DATAOPTS:
 (no option)                   - don't touch the data partition
  -w                           - wipe the data partition
  -d                           - flash the data partition

scripting:
  adb wait-for-device          - block until device is online
  adb start-server             - ensure that there is a server running
  adb kill-server              - kill the server if it is running
  adb get-state                - prints: offline | bootloader | device
  adb get-serialno             - prints: <serial-number>
  adb status-window            - continuously print device status for a specifie
d device
  adb remount                  - remounts the /system partition on the device re
ad-write
  adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader or recovery program
  adb root                     - restarts adb with root permissions

networking:
  adb ppp <tty> [parameters]   - Run PPP over USB.
 Note: you should not automatically start a PPP connection.
 <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
 [parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync [ <directory> ]
  <localdir> can be interpreted in several ways:

  - If <directory> is not specified, both /system and /data partitions will be u
pdated.

  - If it is "system" or "data", only the corresponding partition
    is updated.

C:\android-sdk-windows-1.6_r1\tools>/adb restore backup.ab
'/adb' is not recognized as an internal or external command,
operable program or batch file.

C:\android-sdk-windows-1.6_r1\tools>adb restore backup.ab
Android Debug Bridge version 1.0.22

 -d                            - directs command to the only connected USB devic
e
                                 returns an error if more than one USB device is
 present.
 -e                            - directs command to the only running emulator.
                                 returns an error if more than one emulator is r
unning.
 -s <serial number>            - directs command to the USB device or emulator w
ith
                                 the given serial number
 -p <product name or path>     - simple product name like 'sooner', or
                                 a relative/absolute path to a product
                                 out directory like 'out/target/product/sooner'.

                                 If -p is not specified, the ANDROID_PRODUCT_OUT

                                 environment variable is used, which must
                                 be an absolute path.
 devices                       - list all connected devices

device commands:
  adb push <local> <remote>    - copy file/dir to device
  adb pull <remote> <local>    - copy file/dir from device
  adb sync [ <directory> ]     - copy host->device only if changed
                                 (see 'adb help all')
  adb shell                    - run remote shell interactively
  adb shell <command>          - run remote shell command
  adb emu <command>            - run emulator console command
  adb logcat [ <filter-spec> ] - View device log
  adb forward <local> <remote> - forward socket connections
                                 forward specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)
  adb jdwp                     - list PIDs of processes hosting a JDWP transport

  adb install [-l] [-r] <file> - push this package file to the device and instal
l it
                                 ('-l' means forward-lock the app)
                                 ('-r' means reinstall the app, keeping its data
)
  adb uninstall [-k] <package> - remove this app package from the device
                                 ('-k' means keep the data and cache directories
)
  adb bugreport                - return all information from the device
                                 that should be included in a bug report.

  adb help                     - show this help message
  adb version                  - show version num

DATAOPTS:
 (no option)                   - don't touch the data partition
  -w                           - wipe the data partition
  -d                           - flash the data partition

scripting:
  adb wait-for-device          - block until device is online
  adb start-server             - ensure that there is a server running
  adb kill-server              - kill the server if it is running
  adb get-state                - prints: offline | bootloader | device
  adb get-serialno             - prints: <serial-number>
  adb status-window            - continuously print device status for a specifie
d device
  adb remount                  - remounts the /system partition on the device re
ad-write
  adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader or recovery program
  adb root                     - restarts adb with root permissions

networking:
  adb ppp <tty> [parameters]   - Run PPP over USB.
 Note: you should not automatically start a PPP connection.
 <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
 [parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync [ <directory> ]
  <localdir> can be interpreted in several ways:

  - If <directory> is not specified, both /system and /data partitions will be u
pdated.

  - If it is "system" or "data", only the corresponding partition
    is updated.

C:\android-sdk-windows-1.6_r1\tools>

You need a newer version of adb.
 

Deuces

Senior Member
Jun 4, 2009
396
416
Houston
Unlocking and Root Success.

Had some issues that were resolved thanks to dsb9938 and jcase -

adb and fastboot were freezing, i moved from a usb 3.0 port to usb 2 port, and it worked fine after that.

thank you sirs, great work!
 

Dri94

Senior Member
Oct 9, 2011
2,058
645
Florida
ok guys im at the very end and im getting this. [attached picture] HELP !
 

Attachments

  • Capture.jpg
    Capture.jpg
    36.9 KB · Views: 803

jonah1234

Senior Member
May 29, 2012
1,762
1,089
Why are my permissions getting denied, i ran cmd prompt as an administrator

Code:
C:\adt-bundle-windows\sdk\platform-tools>adb shell mv /data/DxDrm /data/DxDrm_or
g
failed on '/data/DxDrm' - Permission denied

C:\adt-bundle-windows\sdk\platform-tools>
 

beaups

Senior Recognized Developer
Nov 28, 2007
3,276
7,257
Dublin, OH
Why are my permissions getting denied, i ran cmd prompt as an administrator

Code:
C:\adt-bundle-windows\sdk\platform-tools>adb shell mv /data/DxDrm /data/DxDrm_or
g
failed on '/data/DxDrm' - Permission denied

C:\adt-bundle-windows\sdk\platform-tools>

Then the first exploit (restore) didn't work correctly. Try again.

---------- Post added at 06:55 PM ---------- Previous post was at 06:53 PM ----------

ok guys im at the very end and im getting this. [attached picture] HELP !

did you run these commands before running the adb restore command?

adb push runme.sh /data/local/tmp/
adb shell chmod 755 /data/local/tmp/runme.sh
adb shell /data/local/tmp/runme.sh

you must leave that last command running and open a NEW command window to proceed with the next steps (adb restore etc)
 

Dri94

Senior Member
Oct 9, 2011
2,058
645
Florida
Then the first exploit (restore) didn't work correctly. Try again.

---------- Post added at 06:55 PM ---------- Previous post was at 06:53 PM ----------



did you run these commands before running the adb restore command?

adb push runme.sh /data/local/tmp/
adb shell chmod 755 /data/local/tmp/runme.sh
adb shell /data/local/tmp/runme.sh

yea i ran all of them. i dont want a bricked phone, is there any other command i can run to gin permissions ?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 82
    Please see this safer/easier/faster method instead of using the one below http://xdaforums.com/showthread.php?p=36976137#post36976137







    Original guide provided below for historial purposesonly, seriously use hte one above:

    Please refrain from repackaging, or rehosting my materials, ask prior to deciding to.

    If this guide fails, or the auto script (which I will not recommend you use) fails, please do a factory reset before attempting again.

    If you appreciate this, please make sure you check out my original article on the AndroidPolice. Without the support of AP, I wouldn't spend nearly as much time doing this. To the bloggers who will chose to link to a forum post, rather than the original post on a better blog, you suck.

    http://www.androidpolice.com/2012/11/24/exclusive-how-to-unlock-the-droid-dnas-bootloader/

    Donations for new test devices can be made at the paypal link to the left. I reserve the right to send leftover funds to whatever charities I feel like. Generally I choose Boys and Girls club of america, sometimes I choose seasonal charity, or a medical related one.

    Known Problems:
    Adb server is out of date
    Uninstall HTC Sync, Samsung Kies, etc any software that talks to the phone.

    If you get stuck, please immediately find someone in our chat that knows what they are doing. It is very easy to brick your phone if you follow these directions incorrectly, or if a problem arises!

    Need faster help? or Want to help visit our chat
    http://chat.andirc.net:8080/?channels=#droid-dna

    Credits:
    Original development: jcase
    Awesome saver of the day: Sean Beaupre
    Crash test dummy: dsb9938 (I bricked his phone making this!)
    Artem and all @AndroidPolice for putting up with my nonsense.
    Special thanks to Fuses for recommending a better target, and the numerous testers that let me play with their new phones.

    Warning: This is semi complicated, and is known to ruin phones if done incorrectly. Proceed at your own risk


    Needed:
    1gb free space on the phone.
    Working adb, must support the adb restore feature (ICS and up!)

    Downloads:
    backup.ab (300mb) mirrors: http://d-h.st/tau - http://depositfiles.com/files/9c61r4lgo - http://www.filefactory.com/file/2va8yp2i1h99/n/backup.ab

    DNA_TeamAndIRC mirrors - http://d-h.st/D4r - http://www.putlocker.com/file/F357F205F5235B3D - http://rapidgator.net/file/59342799/DNA_TeamAndIRC.zip.html


    Unzip DNA_TeamAndIRC, put runme.sh, CIDGen.apk and backup.ab into the directory where adb is (or anywhere if you have your paths setup right).

    Please Check the readme.txt before continuing!

    Code:
    adb install CIDGen.apk

    Run the CIDGen app on your phone, enter the last digit of your IMEI (NOT YOUR MEID) and press generate. Then confirm the generated file exists.

    Code:
    adb shell ls -l /sdcard/CIDBLOCK.img

    If CIDBLOCK.img does not exist, run the app and try again. Do not proceed without generating a CIDBLOCK.img, it is needed to repair the phone and unlock.

    Once you have CIDBLOCK.img on your sdcard, open two terminals (command prompts) and continue

    In the first terminal/cmd prompt run these commands:

    Code:
    adb push runme.sh /data/local/tmp/
    adb shell chmod 755 /data/local/tmp/runme.sh
    adb shell /data/local/tmp/runme.sh

    runme.sh will continue to loop and spit out No such file or link failed errors, just leave it running for now.

    In the other terminal/cmd prompt run this commands:

    Code:
    adb restore backup.ab

    Then allow the restore on your phone. Once the process is finished, you can go back to the looping terminal and stop it with control + c, or close the terminal

    At this point, do not continue unless you are certain you can do this. Past this point, is where people can brick if they do not follow the directions correctly. If you run into a problem, find someone to help you. Do NOT power your phone off or reboot it. Leave it charging and find someone.

    Code:
    adb shell rm /data/data/com.htc.usage/files/exploit/*
    adb shell mv /data/DxDrm /data/DxDrm_org
    adb shell mkdir /data/DxDrm
    adb shell ln -s /dev/block/mmcblk0p5 /data/DxDrm/DxSecureDB
    adb reboot

    Once the phone is rebooted, open two terminals and repeat the restore exploit:

    In the first one:
    Code:
    adb shell /data/local/tmp/runme.sh

    This process will also loop forever and give out lots of "No such file" or "link failed" errors - again, just leave it running.

    In the second terminal, restore the backup again:

    Code:
    adb restore backup.ab

    After the restore is done, we will undo the DxDrm symlink attack and write the new CIDBLOCK.img:

    Code:
    adb shell mv /data/DxDrm /data/DxDrm_trash
    adb shell dd if=/sdcard/CIDBLOCK.img of=/dev/block/mmcblk0p5

    If this returns an "out of space error" come to our chat, and find either jcase or beaups. Do not reboot. Do not continue.

    Code:
    adb reboot

    After reboot, you can go to http://HTCDev.com, and unlock through their official process. Choose the "All other supported models" option when selecting your phone.


    Cheers!
    7
    Is there a one-click for this?

    Sorry, I couldn't resist!

    Support chat: http://chat.andirc.net:8080/?channels=#droid-dna


    D

    .
    4
    I cannot speak for everyone, but it is the time of year when lots of people are off the computer and being with family.

    If you should encounter problems while doing this between now and the new year, I do not know if you will be able to find help in the chat.

    Just putting that out there.

    D

    .
    3
    Lol.... I'm going to wait for the one click, can't afford to brick my device while trying to unlock with 2 kids running around lol...

    P.s. thank you j case and DSB for the unlock and root

    Sent from my HTC6435LVW using xda premium

    I wouldnt trust a one click, i automated the PITA part already with the CIDGEN app
    2
    If anyone is sketchy about this, you can check out my channel for a video on How To. If its good, then someone can put it in the OP.

    http://www.youtube.com/watch?v=gQRxIDW5vo0&feature=plcp

    Worked no problem for me. Not "ADB" problems. I'm using Windows 8.