YahooPOPs!
- License:
- Freeware
- Price/Registration Fee:
- Free
- File size:
- 3.72 MB
- Publisher:
- YahooPOPs!
- Last Updated:
- 04/16/06
- Version:
- 0.4.3
- Review:
- Read 1 Reviews
- Bookmark:
- User Rating:





Rate It
YahooPOPs! Description:
Yahoo! Mail disabled free access to its POP3 service in April 2002. This resulted in many people (including myself) to look for alternative free POP3 services. But this exercise can be very difficult because of the fact that your Yahoo! Mail address could be with several people and informing all of them about your new email address could prove to be a nightmare. So, YahooPOPs! was born.
YahooPOPs! is an open-source initiative to provide free POP3 access to your Yahoo! Mail account. YahooPOPs! is available on the Windows and Unix platforms.
This application emulates a POP3 server and enables popular email clients like Outlook, Netscape, Eudora, Mozilla, Calypso, etc., to download email from Yahoo! accounts.
Operating System Support: Win95, Win98, WinME, WinNT 4.x, WinXP, Windows2000
Review for YahooPOPs!
Very nice feature, I was thinking of many ways to get my mail in outlook from yahoo.
Untill April 2002 the POP service was free, but then Yahoo decided to introduce a flat charge.
I am using my yahoo account since 95 and was not about to surrender it.
I have written 2 scripts for Outlook, the first one activates yahoo pops, the second one kills the process, so I launch the yahoopops only when I check my email and do not have it all the time in background.
Cheers.
Here is the code:
Public shell_str As String
Public Declare Function GetWindowText _
Lib "user32" _
Alias "GetWindowTextA" ( _
ByVal hWnd As Long, _
ByVal lpString As String, _
ByVal cch As Long _
) As Long
Public Declare Function FindWindow _
Lib "user32" _
Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String _
) As Long
Public Declare Function GetWindowThreadProcessId _
Lib "user32" ( _
ByVal hWnd As Long, _
lpdwProcessId As Long _
) As Long
Public Declare Function GetParent _
Lib "user32" ( _
ByVal hWnd As Long _
) As Long
Public Declare Function GetWindow _
Lib "user32.dll" ( _
ByVal hWnd As Long, _
ByVal wCmd As Long _
) As Long
Public Declare Function PostMessage _
Lib "user32" _
Alias "PostMessageA" ( _
ByVal hWnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
lParam As Any _
) As Long
Const WM_CLOSE = &H10
Sub Start_yahoo()
shell_str = Shell("C:Program FilesYahooPOPsYahooPOPs.exe", 0)
End Sub
Sub Kill_yahoo()
Dim proc_id As Long, win_handle As Long
Dim buf As String, buf_len As Long
proc_id = shell_str
' MsgBox proc_id
If proc_id = 0 Then
MsgBox "Error"
Exit Sub
End If
win_handle = HandleFromProcId(proc_id)
buf = Space$(256)
buf_len = GetWindowText(win_handle, buf, Len(buf))
buf = Left$(buf, buf_len)
PostMessage win_handle, WM_CLOSE, 0&, 0&
End Sub
'Return the window handle from the Shell function
'used from an examples found on API Viewer
Private Function HandleFromProcId(ByVal proc_id As Long) As _
Long
Dim test_hwnd As Long
Dim test_pid As Long
Dim test_thread_id As Long
Const GW_HWNDNEXT As Long = 2
test_hwnd = FindWindow(ByVal vbNullString, ByVal vbNullString)
' Loop until we find the target or we run out
' of windows.
Do While test_hwnd <> 0
' See if this window has a parent. If not,
' it is a top-level window.
If GetParent(test_hwnd) = 0 Then
' This is a top-level window. See if
' it has the target instance handle.
test_thread_id = _
GetWindowThreadProcessId(test_hwnd, _
test_pid)
If test_pid = proc_id Then
' This is the target.
HandleFromProcId = test_hwnd
Exit Do
End If
End If
' Examine the next window.
test_hwnd = GetWindow(test_hwnd, GW_HWNDNEXT)
Loop
End Function