2010-01-05 105 views
1

我有一個鏈接。我已通過正則表達式檢查鏈接是否是有效的URL。現在,我想檢查鏈接是否是有效的http鏈接。即它不應該是一個不存在的鏈接。 在VC++ 6.0(MFC)中有沒有辦法檢查?如何在VC++中檢查鏈接是否存在?

+0

你的意思是,如果它實際上規定了向上和運行服務器和檢索資源? – wallyk 2010-01-05 06:01:45

回答

3

一種方法是嘗試使用URLOpenBlockingStream function從該URL獲取數據。

例子:

IStream* pStream = NULL; 
if (SUCCEEDED(URLOpenBlockingStream(0, "URL string", &pStream, 0, 0))) { 
    // Release the stream immediately since we don't use the data. 
    pStream->Release(); 
    return TRUE; 
} 
else { 
    return FALSE; 
} 
+0

非常感謝。它幫助了我很多 – 2010-01-08 17:26:38

+0

[URLOpenBlockingStream](https://msdn.microsoft.com/en-us/library/ms775127.aspx)具有返回值,應該使用[成功]( https://msdn.microsoft.com/en-us/library/windows/desktop/ms687197.aspx)或[FAILED](https://msdn.microsoft.com/en-us/library/windows/desktop/ms693474 .aspx)宏。 – IInspectable 2016-01-08 23:39:11

+0

@IInspectable,是檢查返回值是更好的。我也讓代碼更具可讀性。 – 2016-01-09 00:11:17

相關問題