本文整理汇总了C++中CUrl::IsUrlType方法的典型用法代码示例。如果您正苦于以下问题:C++ CUrl::IsUrlType方法的具体用法?C++ CUrl::IsUrlType怎么用?C++ CUrl::IsUrlType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CUrl
的用法示例。
在下文中一共展示了CUrl::IsUrlType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnButtonAdd
/*
OnButtonAdd()
*/
void CWallPaperCrawlerSettingsDomainDlg::OnButtonAdd(void)
{
char szValue[MAX_URL+1];
UpdateData(TRUE);
strcpyn(szValue,m_strValue,sizeof(szValue));
CUrl url;
URL Url;
// controlla che non contenga caratteri jolly
if(strchr(szValue,'?') || strchr(szValue,'*'))
{
::MessageBoxResourceEx(this->m_hWnd,MB_OK|MB_ICONERROR,WALLPAPER_PROGRAM_NAME,IDS_ERROR_WILDCARDS,szValue);
return;
}
// controlla che sia un url
if(!url.IsUrl(szValue))
{
::MessageBoxResourceEx(this->m_hWnd,MB_OK|MB_ICONERROR,WALLPAPER_PROGRAM_NAME,IDS_ERROR_INVALID_HTTP_URL,szValue);
return;
}
// controlla che sia un url HTTP
if(!url.IsUrlType(szValue,HTTP_URL))
{
if(::MessageBoxResourceEx(this->m_hWnd,MB_YESNO|MB_ICONQUESTION,WALLPAPER_PROGRAM_NAME,IDS_QUESTION_INVALID_HTTP_URL,szValue)==IDNO)
return;
}
// elimina l'eventuale '/' finale
int nLen = strlen(szValue)-1;
if(szValue[nLen]=='/')
szValue[nLen] = '\0';
url.SplitUrl(szValue,&Url);
BOOL bOnlyHost = TRUE;
if(strlen(Url.file) > 0)
bOnlyHost = FALSE;
if(strlen(Url.dir) > 0)
if(strcmp(Url.dir,"/")!=0)
bOnlyHost = FALSE;
if(!bOnlyHost)
{
::MessageBoxResourceEx(this->m_hWnd,MB_OK|MB_ICONERROR,WALLPAPER_PROGRAM_NAME,IDS_ERROR_NOT_HTTP_DOMAIN,szValue,strlen(Url.file) > 0 ? Url.file : Url.dir,Url.host);
strcpyn(szValue,Url.host,sizeof(szValue));
}
if(strlen(szValue) > 0)
{
if(m_wndDomainList.FindItem(szValue) < 0)
m_wndDomainList.SelectItem(m_wndDomainList.AddItem(szValue,0));
else
::MessageBoxResourceEx(this->m_hWnd,MB_OK|MB_ICONERROR,WALLPAPER_PROGRAM_NAME,IDS_ERROR_VALUE_EXISTS,szValue);
}
else
::MessageBoxResource(this->m_hWnd,MB_OK|MB_ICONERROR,WALLPAPER_PROGRAM_NAME,IDS_ERROR_INVALID_VALUE);
}