Thank you guys, I did all (Fresh installation, copied wallet.dat to the folder, ran repairwallet) but everytime when I try to send few coins to another wallet, the wallet crashes will following error. I have over 100 Million coins.. please help
Error:
Runaway exception
EXCEPTION:St13runtime_error
CDB: Error -30974, can't open database
I suspect you have no previous backup, from when it was working......
Before trying to send coins, run the command dumpprivkey walletaddress for each address you have in your wallet.
Copy these private keys in a safe place and then insert them in a new, clean and freshly installed wallet.
This will get you your coins into the new wallet.
hi, what do you mean by walletaddress.. I have one or more receiving address. do you mean that? when i try to run command dumpprivkey
22:47:47

Error: Please enter the wallet passphrase with walletpassphrase first. (code -13)
Can you elaborate more? what is the command format to put encryption key on command line?
first unlock your wallet
run the command listaddressgroupings (it will get you all the addresses currently in the wallet, along with the amount of coins each one has)
copy those addresses on a txt file
then run the command dumpprivkey from console, for each address you have
example: dumpprivkey dYhvRnFBQpwrWHBGyv2UwL94KojWzX1dm8
this must be run for each address and will give you the private key
copy those keys to your text file
then make a new wallet: close the client and rename wallet.dat to wallet_damaged.dat
run the client again and it will create a new wallet
let the new wallet sync and then go to console and run the command importprivkey yourprivatekeyforeachaddress
this will insert your addresses to the wallet you just created (must be done for each address, one by one)
Edit: and remember to keep backups next time!!!!