Jump to content

General firmware extractor/updater utility for USB devices.


Afterdawn

Recommended Posts

Hi,

For the past few days I've been trying to get my USB flashdrive to autorun. I read that this is impossible to do without installing a third-party program, which is something I'm not willing to do. (I want a solution that will work on all standard Windows XP computers). Please note I'm talking about automatically running programs when I plug-in the USB drive. I'm not referring to the usual Explorer popup you get when inserting a removable device.

The reason most USB drives cannot autorun is because they have the Removable Media Bit enabled. For more information see these google results.

So, I want to disable this bit one way or the other! I thought maybe I could update the firmware with a general firmware utility (if such one exists).

My flashdrive is a 2GB "Tiny Disk", and they don't have a flashing utility available so it seems. However, I haven't been able to find a flashing utility for USB storage devices at all..

Anyone who could help me out? Thanks in advance.

Link to comment
Share on other sites


  • 2 months later...

http://msdn.microsoft.com/library/default....2k_cookbook.asp

might have some merrit, in my own thinking....

instead of trying to trick built in autoplay / autorun to work. and without trying to hack up a driver from someone else.

use built in functions of the registry.... the link above from understanding. will allow you to make your own autorun.bat file in idea. and trick windows in a sense to think that your usb flash drive is a pritorty usb device. with its own application. example. USB video capture device with its own customized oem driver settings in a sense.

-------------------------------------------

First, define the device group by adding the following ZipDrive key and its values.

HKEY_LOCAL_MACHINE

SOFTWARE

Microsoft

Windows

CurrentVersion

Explorer

AutoplayHandlers

DeviceGroups

UsbDrive

Label [REG_SZ]= My Custom USB drive

DeviceHandlers [REG_SZ]= MyUsbHandler

think of this as defining / declaring a varable in a given proggraming app. in this case. MyUsbHandler = function

------------------------------------------

Each Zip drive device is then declared as part of the ZipDrive group, inheriting the properties of that group. Under the DeviceParameters key of the device instance, add a value named DeviceGroup as type REG_SZ. The data entry for this value is the name of the device group.

HKEY_LOCAL_MACHINE

SYSTEM

CurrentControlSet

Enum

USB

Vid_059b&Pid_0031

059B003112010E93

Device Parameters

DeviceGroup [REG_SZ]= UsbDrive

((the Vid_059b&Pid_0031 059B003112010E93 guessing will be different for USB drive. this from understand another variable. but this is were we tell windows this type of hardware will be assigned to this variable. aka usb drive = this hardareware type

-------------------------

HKEY_LOCAL_MACHINE

SOFTWARE

Microsoft

Windows

CurrentVersion

Explorer

AutoplayHandlers

Handlers

MyUsbHandler

Action [REG_SZ]= %UsbDrive%\autorun.bat

InitCmdLine [REG_SZ]= /run

ProgID [REG_SZ]= cmd.exe

Provider [REG_SZ]= cmd.exe

takeing last 4 varables for granted honestly no idea what to put for %usbdrive% variable it may be something different, same goes for initcmdline / progid / provider.

this is more or less homebrew autoplay. were we say hay. when you call MyUsbHandler Do this. in this case run autorun.bat

-----------------

HKEY_LOCAL_MACHINE

SOFTWARE

Microsoft

Windows

CurrentVersion

Explorer

AutoplayHandlers

EventHandlers

GenericVolumeArrival

MyUsbHandler [REG_SZ]

this is what actuall starts it all. when you insert the usb drive. windows should get GenericalVolumnArrival it will call MyUsbHandler. which in turn will check that it is from a USB drive and not a cdrom or other device. and if it is a USB drive. to run autobat.bat located on the usb drive.

---------------------------

i have zero knowledge or expereince with all this. but in theory above should work if the right variables get plugged into the correct spots in the registery.

----------------

some other thoughts....

what about mapping drive to a network share. and then some how get autorun to launch. me be thinking network share may become active when drive is plugged in ((aka share is found)) and start autorun?

---------------------------------

from reading over links provided in this post and other post. i don't see autoplay working or less complete custom driver is created to include support for autorun. otherwords a hacked usbport.sys driver (spelling) which is doubtfull. be nice to have source code to it....

----------------

and lastly. back to the oringal example of the usb video capture example. the link below lead me to the given idea... but below link also has autorun.inf, and looks like extra proggy to monitor usb drive being plugged in. plus possibly either custom usb drive driver or monitor application.

http://www.usbman.com/forum/UltraBoard.cgi...165&SID=1070628

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...