If your wife is using Yahoo's web site to send her mail then the problem must be at their end.
However I'd guess, from what you've written, that she's using an email client (such as Outlook, Outlook Express, Thunderbird or Windows Live Mail). Since she's using XP, I'll assume that it's Outlook Express (but my instructions are basically the same for other email clients).
It seems that Outlook Express has lost (or, more usually, messed up) the settings for your wife's account.
She should click on Tools, then on Accounts.
If she's only got one email account it will probably already be highlighted. Otherwise click on the relevant account to highlight it.
Then click Properties.
Click on the General tab (if its not already selected) just to check that everything that looks OK but then click on the important tab, which is Servers.
Assuming that the Yahoo mail is through a BT account, the incoming server type should be 'POP3', the incoming server should show 'mail.btinternet.com', as should the outgoing server.
The account name must be your wife's FULL email address (not just the first part).
It might be worth deleting the asterisked password for your wife's account, and then retyping it.
'Remember password' needs to be ticked, as does 'My server requires authentication'. (NB: That's VERY important!).
Click 'Apply'
Now click on the 'Advanced' tab.
The outgoing mail server needs to be 25. The incoming server should be 110.
(Don't change anything else).
If anything has changed, click 'Apply' again.
Click 'OK'
Cross fingers.
If that doesn't work, start as above again but - instead of clicking on 'Properties' - click on 'Remove' to completely delete the account settings. (It's only the settings which will be erased. No emails will disappear!). Then click on Add > Mail to create the account afresh, using the information I've already provided. (Once you've created the account, use @properties' to review the settings. In particular you'll need to tick the 'authentication' box after entering the basic account settings).
Chris