TechSpot

Safely Remove Hardware (Wireless)

By mewi
Dec 31, 2008
  1. Well here is a problem with my Realtek internal wireless card... It shows the "Safely remove hardware" icon whenever I have it enabled. Funny thing is, I don't remember this message showing up before o.O But ah well... Anyway I know there is a way to disable the remove hardware message with SATA hard drives by editing registry like this...

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvata

    Add DWORD > DisableRemovable > Value = 1

    Anyone have any idea how to do this for a wireless card?
     
  2. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    just to understand something....

    do you not have the Safely Remove Hardware icon normally? do you have no devices that legitimately belong in that icon?

    - Cuz if the answer is no, you is simplest to rt click Start->Properties and change task bar options to just HIDE it

    BUT be caerful as you really want that icon to appear and you use it if it applies to other devices that need it.
     
  3. mewi

    mewi TS Rookie Topic Starter Posts: 70

    No, it's from my wireless card.

    and No Hide Icons is a mask not a solution... and I hate hiding icons.

    Also I do not want a 3rd party program that disables it ;\

    There must be some form of registry that will allow me to disable it ;|
     
  4. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    yes, absolutely. (Was just making sure you knew what you really wanted to accomplish)

    The device attributes are stored in the device's driver. But i can't do what needed for the final answer till you tell me the card;s "device instance id"

    Click here to see Device Manager example. Also shows a handy tool for XP to copy the data string.

    If Vista, just use example above to find it in Device Manager (same spot, similar but slightly different name for device id and vista lets you copy direcly)
     
  5. mewi

    mewi TS Rookie Topic Starter Posts: 70

    Hello, thank you very much for your response.

    Hardware: RealTek RTL8187 Wireless 802.11g 54MBPS USB 2.0 Network Adapter

    Device Instance ID: USB\VID_0BDA&PID_8187\0015AF3ED77E
     
  6. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    Will get back to you... btw.. i had kinda guessed that even tho an internal card it probably connects via USB (which is also part of why you;re getting Safely Remove Icon.) Note the start of its instance id.. All USB device ids start USB\
     
  7. mewi

    mewi TS Rookie Topic Starter Posts: 70

    Yeah I noticed that too, however I wouldn't of guessed it was connected to the USB chipset... The card itself comes as part of my motherboard.

    M2N32 SLI Deluxe Wireless Edition

    [​IMG]
     
  8. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    was going to say "they're sneaky that way" and they can be...

    just went back find product name (really only noticed model # before as i really went to get the device id) and now noticed)
    RealTek RTL8187 Wireless 802.11g 54MBPS USB 2.0 Network Adapter

    and coincidence (or probably not) the WiFi and USB connectors on that board are right next to each other
     
  9. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    => BACKUP your registry (and probably do a system checkpoint as well)
    => Follow this and tell me the value you see for capabilities and i'll tell what to change it to
    OR maybe best to just copy/paste the subkey and i confirm all else looks good an then tell you new value for Capabilities

    ==> Start->Run regedit
    ==> Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB/VID_0BDA&PID_8187
    ==> Should be just one subkey under it. Open it
    =====> If you should see more then one subkey let me know (export or screen capture )
    => You'll see stuff like below where
    ====> One item will have a text string you can see describes your wireless
    ====> Capablities has the REMOVABLE attribute encoded as (0x00000004)

    Tell me (or export) it's value, i'll tell you what need change for its new value

    Code:
    Name	Type	Data	
    (Default)	REG_SZ	(value not set)	
    Capabilities	REG_DWORD	0x00000084 (132)	
    Class	REG_SZ	USB	
    ClassGUID	REG_SZ	{36FC9E60-C465-11CF-8056-444553540000}	
    CompatibleIDs	REG_MULTI_SZ	USB\Class_09&SubClass_00&Prot_00 USB\Class_09&SubClass_00 USB\Class_09 	
    ConfigFlags	REG_DWORD	0x00000000 (0)	
    DeviceDesc	REG_SZ	Generic USB Hub	
    
     
  10. mewi

    mewi TS Rookie Topic Starter Posts: 70

    Code:
    Name                       Type                           Data
    Capabilities              REG_DWORD            0x00000014 (20)
    Class                       REG_SZ                      Net
    ClassGUID               REG_SZ                     {4D36E972-E325-11CE-BFC1-08002BE10318}
    CompatibleIDs         REG_MULTI_SZ          USB\Class_00&SubClass_00&Prot_00 USB\Class_00&SubClass_00 USB\Class_00
    ConfigFlags             REG_DWORD             0x00000000 (0)
    DeviceDesc             REG_SZ                      Realtek RTL8187 Wireless 802.11g 54Mbps USB 2.0 Network Adapter
    Driver                       REG_SZ                     {4D36E972-E325-11CE-BFC1-08002BE10318}\0010
    HardwareID              REG_MULTI_SZ          USB\Vid_0bda&Pid_8187&Rev_0100 USB\Vid_0bda&Pid_8187
    LocationInformation REG_SZ                      RTL8187_Wireless
    Mfg                           REG_SZ                     Realtek Semiconductor Corp.
    Servoce                   REG_SZ                      RTLWUSB
    UINumber                 REG_DWORD            0x00000000 (0)
    
    Sorry if its a bit mixxed up XD
     
  11. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    no prob. easy to read and easy see what the new value should be.

    Using regedit
    Navigate to the key
    Rt click Capabilities
    - Click Modify
    - Verify the Edit window opens and Base Hexadecimal is checked (should be by default but double check)
    - Enter new value 10
    Close everything

    And note: If you ever to re-install the driver you;ll lose the change. so you might want to export the key to save it or these instructions. Or just post here again!

    let me know if it works as expected
     
  12. mewi

    mewi TS Rookie Topic Starter Posts: 70

    I had to modify my account permissions to modify that particular one. It works...

    However

    Only until I next reboot, any idea why the registry entry keeps re-writing itself back? ;o Any solutions?
     
  13. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    Darn! Forgot to mention permissions but glad you already knew so saved you a back-and-forth round of messages.

    hmm.. i thought the change persisted across reboots. But obviously not THAT change (since you just tested it).

    Don't yet know the solution but must be the device attributes isn't in the data that Windows writes back to disk on a shutdown (what it does while you see that msg like "Please wait.. Windows saving your current settings") Might be Windows only writes it back to disk if it knows it changed (not the case when we've hacked it!)

    Have to look further and get back to you.
     
  14. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    Oh! And just re-read the post and noticed.....

    just fyi.. instead of changing account permissions, can also rt click the Registry key (not a value) to select Permissions and change permissions on the KEY vs. your account. whichever works best for ya

    /* EDIT */
    And it might be easiest to give you something runs each time you logon (or maybe at windows startup) that reapplies the change.. in any case, will get back to you
     
  15. mewi

    mewi TS Rookie Topic Starter Posts: 70

    Well I was thinking of just throwing the registry entry into my startup... but then I'd be prompted by the system if I want to add the change lol.

    Edit: lol messing around with permissions didn't really accomplish anything. I tried removing the system's ability to modify the specific entry, as well as my account and rebooted and... that didn't work. So I removed even read access, but the system was still able to over-write the entry... hmmm I thought System was the OS itself :|
     
  16. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    That's pretty much what i was thinking. Well, except the being prompted part! ;)

    Use the command:
    regedit.exe /s "full path to .reg file"

    and note:
    You should have double quotes surrounding the path to reg file
    You can verify it works by opening a command prompt and run it there manually
    should update registry with no prompting
     
  17. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    JUST SAW YOUR EDIT

    and double posting to make sure you see this (but sounds like will be OK now anyway)

    When i talked of modifying permissions for the key it was to modify YOUR permissions so you can update it yourself (not try and block windows on boot)

    I think it's good it didn't work ! If it did what you think you wanted i suspect it could have left a time bomb for you!

    Because you wanted to keep Windows from overwriting that device ATTRIBUTE
    BUT i wouldn't be at all surprised
    ==> if the Windows write operation which includes that attribute
    ==> is a write operation that happens to be writing A WHOLE LOT MORE then just the device attribute you're trying to prevent

    Which would have meant lots of registry updates may have been blocked by the write and not occur! in any the /s option on regedit should do it
     
  18. mewi

    mewi TS Rookie Topic Starter Posts: 70

    Sorry but can you be a bit more specific? I was thinking of just adding the registry to the startup folder ;o

    Edit: To your double post response, no I didn't stop my whole system from writing registry, only the specific entry. Nevertheless it didn't work and the permissions were set back to what they were before.

    And the idea was not derived by something you said, but something I came up by myself ;p
     
  19. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    1. As to blocking the write on bootup
    i understand you only wanted to block writing the single registry key.
    And what i'm suggesting as potential problem is just a theory based on how systems often do things and what must get on bootup...
    => Every disk read or write operation is "expensive" in that disk access is slow compared to the computer's internal speeds it can otherwise perform at (including memory read/writes) when not having to wait for disk access
    => Systems have to read and write disk data of course but there are many tricks to optimize/ minimize the number of disk read/writes they must do
    => So on a system boot think of how many individual and small (in data size) registry keys might need to be read from disk and written to memory, then read from disk for the next, and so on...
    => Where it is much cheaper (from overhead and time point of view) for Windows to combine many small data write operations into ONE single BIG write operation of contiguous data (it's much cheaper to do one write of alot data vs. many writes of small data even if areas of memory in the single contiguous data doen't need being written. Remember that memory speeds are fast)
    =>So.... blocking the system write on boot may have side effects at boot time to block a whole lot more then you want (anway, is all hypothetical. don't know for certain what its doing)

    As to the suggestion......
    1. The registry key with the attribute is exported to a .reg file
    2. We know running the .reg files performs update (this much i think you also had in mind)
    3. But thought is to run the command from a batch file (basically a text file which has .bat extension making it executable vs. just .txt file), put the regedit command in the batch file along with path to .reg file you want to apply. Invoking the batch file by adding it to the things Windows automatically runs with your logon startups
    4. Problem is the prompt from regedit could interfere at trying to automate all this
    5. So the command you put in the batch file regedit.exe /s uses the /s option to suppress prompting and voila its now fully automatic each time you logon and the patch applies with no more work
     
  20. mewi

    mewi TS Rookie Topic Starter Posts: 70

    Thanks, it appears to be working perfectly ^^

    Maybe you could help me with another issue regarding error messages with my Ai Remote, it wasn't particularly meant for my exact motherboard, but it works for a nearly identical one and all the functions of the remote work nevertheless... But I get error messages when pressing buttons ( even though the functions still work when the button is pressed )

    This was the thread regarding my problem: http://www.techspot.com/vb/showthread.php?p=696044#post696044

    Errors

    Whenever AiRc.exe is Running

    When AiRc.exe is Loaded: AiQuietGetDevice Error
    When ever Application is Launched VIA Remote: AiQuietSetDevice Error
    When ever Application Switch Menu is Opened: AiQuietCheckPower Error


    Also note that AiRC.exe is the .exe that runs all of the remotes Ai functions. AiRemote.exe runs all the other functions, such as media control. Ai Functions are things like, power button, Ai sleep mode, application switching menu, application launcher. These functions could not work for one of two reasons... Either I did not place the files properly into my system, or the issue is related to the program checking for hardware versions.


    What kind of info will you need? ;o


    Note: In the thread link provided above, it states I was forced to acquire the Remote utility by extracting the cab files, I could not install by normal means.
     
  21. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    Sure... can take a look tho not sure just when... tho if you don't hear anything back within 3-4 days... feel free to BUMP for attention
     
  22. mewi

    mewi TS Rookie Topic Starter Posts: 70

    Alright, thank you so much for your assistance ^^ Hope we can solve this problem, always gets the brain juices pumping XD
     
  23. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    i just skimmed the threads, downloaded and a quick look in the .zip files. A couple comments

    1. As for trying to do your own install....
    Understand that installers are capable of going through all kinds of hardware/operating system/version number/etc. checking which in turn allows it to tweak any number of different variables in any number and different ways it wants to.

    Meaning....you might get lucky if happens the install you tackle only has a couple of variables/tweaks in it. Otherwise, guessing what all the variables are let alone all the right values for all the variables can be the proverbial "needle in a haystack"

    2. So does that mean you're screwed?
    Nah! Or at least not necessarily... But your best shot is start at the beginning (not the middle) to try figure out what's going on.

    (Not that taking the suggested approach makes it easy.. the task will likely still be far from easy. especially trying to read/interpret various installer files. But those files still follow some standard methods so odds of finding info online about installer instructions/method is probably still better odds then ever finding the details about how your ASUS Remote files are tied together and how ASUS designed their internals to work.

    So what next?
    You start with the top level .ini files and the "top of the top .ini file" is Setup.ini. But i can't get any more out of it then you probably can!

    Though when happening to look at AsusSetup.ini it's also up top somewhere in the food chain as note it setting up (must be to invoke) setup.exe (the executable which reads setup.ini)

    Next interesting clue (ok something i already know) but STILL it's the type of clue you could still find as a clue on your own.... The AsusSetup .ini file references a file with a .log extension. And .log files always tell you something about what's happening.

    So next step is re-running the install then look in same directory or search your hard drive see if it left behind AiRemote.log and or for that matter setup.iss

    And also see if registry HKEY_LOCAL_MACHINE\Software\Asus\AI Remote\ ever got created and what's in there
     
  24. mewi

    mewi TS Rookie Topic Starter Posts: 70

    Yes adding the registry was one of the first things I did, but I only double clicked the needed registry files that were provided in the .cab files

    -vista.reg of course, since I use Windows XP Pro

    Anyway here are the files from the .cab files. Various files were added manually by me, such as setup.exe ( in hopes I could run setup.exe without any problems of course failure ;p )

    Files Below

    http://files.filefront.com/Ai+Remoterar/;12853298;/fileinfo.html
     
  25. LookinAround

    LookinAround Ex Tech Spotter Posts: 6,491   +183

    Thanks for the new download file and post but: no, no, no!

    I don't think you're reading what i'm trying to write.

    You're still jumping into the middle of the install process. I don't know how program A fits to program B. (A software developer could pick any number of different ways) For example: guessing at how programs A and B communicate with each other as you must configure it for them to run. Maybe guess configured to use TCP/IP to communicate amongst them. Oh wait, maybe they use pipes instead. Oh, wrong again... they talk through shared memory and i have to pass all the semaphore names in that empty registry key i found.

    Like i said, this approach can be like trying to find that proverbial needle in a haystack. Not saying it's impossible to find that needle this way but it's far too much work for a lower chance of getting maybe/only/sometimes something to work

    So i'll state again: Rather then jumping into the middle you start at the beginning. You try to learn the install process is doing, what its configuring, which set of files it uses along its build/install path, look for clues as to the data it uses for setup, might find some of the variable and values you need to so it all makes sense. and most important are the "artefacts" left behind (e.g. you're not curious to see if that log file i pointed out still exists on your drive? Maybe find the logfile info is minimal, sometimes its a landmine and tells all.. and sometimes it only STARTS minimal until you see something in an ini file like LOGLEVEL= and get lucky after a few guesses and and learn how to simply assign LOGLEVEL different values to capture detailed program trace info. Might even tell u about variable/values used..

    Bottom line: Can see if we possibly find anything trying to walk through installer process / steps... I may make an observation. direct you at the legwork

    Oh. one more thing. The time you put into figuing out installers can be alot of time and not always pay off on the product you're lookin for. BUT whatever you learn is reusable and can help the next time where you start with a little more knowledge on figuring out installers.

    With your current method, i think in spite of all hte time you have to invest to maybe solve questions, it's all THROWAWAY doest no gurantee any of the details on the program are reusable for next program
     
Topic Status:
Not open for further replies.

Similar Topics

Add New Comment

You need to be a member to leave a comment. Join thousands of tech enthusiasts and participate.
TechSpot Account You may also...