本文整理汇总了C++中strcmpiW函数的典型用法代码示例。如果您正苦于以下问题:C++ strcmpiW函数的具体用法?C++ strcmpiW怎么用?C++ strcmpiW使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了strcmpiW函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: is_elem_name
static BOOL is_elem_name(HTMLElement *elem, LPCWSTR name)
{
const PRUnichar *str;
nsAString nsstr;
BOOL ret = FALSE;
nsresult nsres;
static const PRUnichar nameW[] = {'n','a','m','e',0};
if(!elem->nselem)
return FALSE;
nsAString_Init(&nsstr, NULL);
nsIDOMHTMLElement_GetId(elem->nselem, &nsstr);
nsAString_GetData(&nsstr, &str);
if(!strcmpiW(str, name)) {
nsAString_Finish(&nsstr);
return TRUE;
}
nsres = get_elem_attr_value(elem->nselem, nameW, &nsstr, &str);
if(NS_SUCCEEDED(nsres)) {
ret = !strcmpiW(str, name);
nsAString_Finish(&nsstr);
}
return ret;
}
示例2: HTMLFrameBase_put_scrolling
static HRESULT WINAPI HTMLFrameBase_put_scrolling(IHTMLFrameBase *iface, BSTR v)
{
HTMLFrameBase *This = impl_from_IHTMLFrameBase(iface);
nsAString nsstr;
nsresult nsres;
TRACE("(%p)->(%s)\n", This, debugstr_w(v));
if(!(!strcmpiW(v, yesW) || !strcmpiW(v, noW) || !strcmpiW(v, autoW)))
return E_INVALIDARG;
if(This->nsframe) {
nsAString_InitDepend(&nsstr, v);
nsres = nsIDOMHTMLFrameElement_SetScrolling(This->nsframe, &nsstr);
}else if(This->nsiframe) {
nsAString_InitDepend(&nsstr, v);
nsres = nsIDOMHTMLIFrameElement_SetScrolling(This->nsiframe, &nsstr);
}else {
ERR("No attached ns frame object\n");
return E_UNEXPECTED;
}
nsAString_Finish(&nsstr);
if(NS_FAILED(nsres)) {
ERR("SetScrolling failed: 0x%08x\n", nsres);
return E_FAIL;
}
return S_OK;
}
示例3: set_host_properties
static BOOL set_host_properties(const WCHAR *prop)
{
static const WCHAR nologoW[] = {'n','o','l','o','g','o',0};
static const WCHAR iactive[] = {'i',0};
static const WCHAR batch[] = {'b',0};
if(*prop == '/') {
++prop;
if(*prop == '/')
++prop;
}
else
++prop;
if(strcmpiW(prop, iactive) == 0)
wshInteractive = VARIANT_TRUE;
else if(strcmpiW(prop, batch) == 0)
wshInteractive = VARIANT_FALSE;
else if(strcmpiW(prop, nologoW) == 0)
WINE_FIXME("ignored %s switch\n", debugstr_w(nologoW));
else
{
WINE_FIXME("unsupported switch %s\n", debugstr_w(prop));
return FALSE;
}
return TRUE;
}
示例4: parse_encoding_name
static xml_encoding parse_encoding_name(const WCHAR *encoding)
{
static const WCHAR utf8W[] = {'U','T','F','-','8',0};
if (!strcmpiW(encoding, utf8W)) return XmlEncoding_UTF8;
if (!strcmpiW(encoding, utf16W)) return XmlEncoding_UTF16;
return XmlEncoding_Unknown;
}
示例5: DRIVER_GetDriverName
/*****************************************************************************
* DRIVER_GetDriverName
*
*/
BOOL DRIVER_GetDriverName( LPCWSTR device, LPWSTR driver, DWORD size )
{
static const WCHAR displayW[] = { 'd','i','s','p','l','a','y',0 };
static const WCHAR devicesW[] = { 'd','e','v','i','c','e','s',0 };
static const WCHAR display1W[] = {'\\','\\','.','\\','D','I','S','P','L','A','Y','1',0};
static const WCHAR empty_strW[] = { 0 };
WCHAR *p;
/* display is a special case */
if (!strcmpiW( device, displayW ) ||
!strcmpiW( device, display1W ))
{
lstrcpynW( driver, displayW, size );
return TRUE;
}
size = GetProfileStringW(devicesW, device, empty_strW, driver, size);
if(!size) {
WARN("Unable to find %s in [devices] section of win.ini\n", debugstr_w(device));
return FALSE;
}
p = strchrW(driver, ',');
if(!p)
{
WARN("%s entry in [devices] section of win.ini is malformed.\n", debugstr_w(device));
return FALSE;
}
*p = 0;
TRACE("Found %s for %s\n", debugstr_w(driver), debugstr_w(device));
return TRUE;
}
示例6: navigate_anchor
static HRESULT navigate_anchor(HTMLAnchorElement *This)
{
nsAString href_str, target_str;
HTMLOuterWindow *window = NULL;
nsresult nsres;
HRESULT hres = E_FAIL;
static const WCHAR _parentW[] = {'p','a','r','e','n','t',0};
static const WCHAR _selfW[] = {'_','s','e','l','f',0};
static const WCHAR _topW[] = {'_','t','o','p',0};
nsAString_Init(&target_str, NULL);
nsres = nsIDOMHTMLAnchorElement_GetTarget(This->nsanchor, &target_str);
if(NS_SUCCEEDED(nsres)) {
const PRUnichar *target;
nsAString_GetData(&target_str, &target);
TRACE("target %s\n", debugstr_w(target));
if(*target && strcmpiW(target, _selfW)) {
if(!strcmpiW(target, _topW)) {
TRACE("target _top\n");
get_top_window(This->element.node.doc->basedoc.window, &window);
}else if(!strcmpiW(target, _parentW)) {
FIXME("Navigating to target _parent is not implemented\n");
nsAString_Finish(&target_str);
return S_OK;
}else {
HTMLOuterWindow *top_window;
get_top_window(This->element.node.doc->basedoc.window, &top_window);
hres = get_frame_by_name(top_window, target, TRUE, &window);
if(FAILED(hres) || !window) {
hres = navigate_anchor_window(This, target);
nsAString_Finish(&target_str);
return hres;
}
}
}
}
nsAString_Finish(&target_str);
nsAString_Init(&href_str, NULL);
nsres = nsIDOMHTMLAnchorElement_GetHref(This->nsanchor, &href_str);
if(NS_SUCCEEDED(nsres)) {
const PRUnichar *href;
nsAString_GetData(&href_str, &href);
if(*href) {
if(!window)
window = This->element.node.doc->basedoc.window;
hres = navigate_url(window, href, window->uri_nofrag, BINDING_NAVIGATED);
}else {
TRACE("empty href\n");
hres = S_OK;
}
}
nsAString_Finish(&href_str);
return hres;
}
示例7: GetRootKey
static BOOL
GetRootKey (PWCHAR Name)
{
if (!strcmpiW (Name, HKCR))
{
strcpyW (Name, HKCRPath);
return TRUE;
}
if (!strcmpiW (Name, HKCU))
{
strcpyW (Name, HKCUPath);
return TRUE;
}
if (!strcmpiW (Name, HKLM))
{
strcpyW (Name, HKLMPath);
return TRUE;
}
if (!strcmpiW (Name, HKU))
{
strcpyW (Name, HKUPath);
return TRUE;
}
#if 0
if (!strcmpiW (Name, HKR))
return FALSE;
#endif
return FALSE;
}
示例8: is_local_machine
static BOOL is_local_machine( const WCHAR *server )
{
static const WCHAR dotW[] = {'.',0};
static const WCHAR localhostW[] = {'l','o','c','a','l','h','o','s','t',0};
WCHAR buffer[MAX_COMPUTERNAME_LENGTH + 1];
DWORD len = sizeof(buffer) / sizeof(buffer[0]);
if (!server || !strcmpW( server, dotW ) || !strcmpiW( server, localhostW )) return TRUE;
if (GetComputerNameW( buffer, &len ) && !strcmpiW( server, buffer )) return TRUE;
return FALSE;
}
示例9: wWinMain
int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE prev, WCHAR *cmdline, int show)
{
static const WCHAR regserverW[] = {'r','e','g','s','e','r','v','e','r',0};
static const WCHAR unregserverW[] = {'u','n','r','e','g','s','e','r','v','e','r',0};
if(*cmdline == '-' || *cmdline == '/') {
if(!strcmpiW(cmdline+1, regserverW))
return register_iexplore(TRUE);
if(!strcmpiW(cmdline+1, unregserverW))
return register_iexplore(FALSE);
}
return IEWinMain(cmdline, show);
}
示例10: WshCollection_Item
static HRESULT WINAPI WshCollection_Item(IWshCollection *iface, VARIANT *index, VARIANT *value)
{
WshCollection *This = impl_from_IWshCollection(iface);
static const WCHAR allusersdesktopW[] = {'A','l','l','U','s','e','r','s','D','e','s','k','t','o','p',0};
static const WCHAR allusersprogramsW[] = {'A','l','l','U','s','e','r','s','P','r','o','g','r','a','m','s',0};
static const WCHAR desktopW[] = {'D','e','s','k','t','o','p',0};
PIDLIST_ABSOLUTE pidl;
WCHAR pathW[MAX_PATH];
int kind = 0;
BSTR folder;
HRESULT hr;
TRACE("(%p)->(%s %p)\n", This, debugstr_variant(index), value);
if (V_VT(index) != VT_BSTR)
{
FIXME("only BSTR index supported, got %d\n", V_VT(index));
return E_NOTIMPL;
}
folder = V_BSTR(index);
if (!strcmpiW(folder, desktopW))
kind = CSIDL_DESKTOP;
else if (!strcmpiW(folder, allusersdesktopW))
kind = CSIDL_COMMON_DESKTOPDIRECTORY;
else if (!strcmpiW(folder, allusersprogramsW))
kind = CSIDL_COMMON_PROGRAMS;
else
{
FIXME("folder kind %s not supported\n", debugstr_w(folder));
return E_NOTIMPL;
}
hr = SHGetSpecialFolderLocation(NULL, kind, &pidl);
if (hr != S_OK) return hr;
if (SHGetPathFromIDListW(pidl, pathW))
{
V_VT(value) = VT_BSTR;
V_BSTR(value) = SysAllocString(pathW);
hr = V_BSTR(value) ? S_OK : E_OUTOFMEMORY;
}
else
hr = E_FAIL;
CoTaskMemFree(pidl);
return hr;
}
示例11: EnterCriticalSection
/**********************************************************************
* DRIVER_load_driver
*/
const DC_FUNCTIONS *DRIVER_load_driver( LPCWSTR name )
{
HMODULE module;
struct graphics_driver *driver;
static const WCHAR displayW[] = { 'd','i','s','p','l','a','y',0 };
static const WCHAR display1W[] = {'\\','\\','.','\\','D','I','S','P','L','A','Y','1',0};
EnterCriticalSection( &driver_section );
/* display driver is a special case */
if (!strcmpiW( name, displayW ) ||
!strcmpiW( name, display1W ))
{
driver = load_display_driver();
LeaveCriticalSection( &driver_section );
return &driver->funcs;
}
if ((module = GetModuleHandleW( name )))
{
for (driver = first_driver; driver; driver = driver->next)
{
if (driver->module == module)
{
driver->count++;
LeaveCriticalSection( &driver_section );
return &driver->funcs;
}
}
}
if (!(module = LoadLibraryW( name )))
{
LeaveCriticalSection( &driver_section );
return NULL;
}
if (!(driver = create_driver( module )))
{
FreeLibrary( module );
LeaveCriticalSection( &driver_section );
return NULL;
}
TRACE( "loaded driver %p for %s\n", driver, debugstr_w(name) );
LeaveCriticalSection( &driver_section );
return &driver->funcs;
}
示例12: nsAString_GetData
HTMLOuterWindow *get_target_window(HTMLOuterWindow *window, nsAString *target_str, BOOL *use_new_window)
{
HTMLOuterWindow *top_window, *ret_window;
const PRUnichar *target;
HRESULT hres;
static const WCHAR _parentW[] = {'_','p','a','r','e','n','t',0};
static const WCHAR _selfW[] = {'_','s','e','l','f',0};
static const WCHAR _topW[] = {'_','t','o','p',0};
*use_new_window = FALSE;
nsAString_GetData(target_str, &target);
TRACE("%s\n", debugstr_w(target));
if(!*target || !strcmpiW(target, _selfW)) {
IHTMLWindow2_AddRef(&window->base.IHTMLWindow2_iface);
return window;
}
if(!strcmpiW(target, _topW)) {
get_top_window(window, &top_window);
IHTMLWindow2_AddRef(&top_window->base.IHTMLWindow2_iface);
return top_window;
}
if(!strcmpiW(target, _parentW)) {
if(!window->parent) {
WARN("Window has no parent, treat as self\n");
IHTMLWindow2_AddRef(&window->base.IHTMLWindow2_iface);
return window;
}
IHTMLWindow2_AddRef(&window->parent->base.IHTMLWindow2_iface);
return window->parent;
}
get_top_window(window, &top_window);
hres = get_frame_by_name(top_window, target, TRUE, &ret_window);
if(FAILED(hres) || !ret_window) {
*use_new_window = TRUE;
return NULL;
}
IHTMLWindow2_AddRef(&ret_window->base.IHTMLWindow2_iface);
return ret_window;
}
示例13: ScriptDisp_GetDispID
static HRESULT WINAPI ScriptDisp_GetDispID(IDispatchEx *iface, BSTR bstrName, DWORD grfdex, DISPID *pid)
{
ScriptDisp *This = ScriptDisp_from_IDispatchEx(iface);
dynamic_var_t *var;
ident_map_t *ident;
function_t *func;
TRACE("(%p)->(%s %x %p)\n", This, debugstr_w(bstrName), grfdex, pid);
if(!This->ctx)
return E_UNEXPECTED;
for(ident = This->ident_map; ident < This->ident_map+This->ident_map_cnt; ident++) {
if(!strcmpiW(ident->name, bstrName)) {
*pid = ident_to_id(This, ident);
return S_OK;
}
}
for(var = This->ctx->global_vars; var; var = var->next) {
if(!strcmpiW(var->name, bstrName)) {
ident = add_ident(This, var->name);
if(!ident)
return E_OUTOFMEMORY;
ident->is_var = TRUE;
ident->u.var = var;
*pid = ident_to_id(This, ident);
return S_OK;
}
}
for(func = This->ctx->global_funcs; func; func = func->next) {
if(!strcmpiW(func->name, bstrName)) {
ident = add_ident(This, func->name);
if(!ident)
return E_OUTOFMEMORY;
ident->is_var = FALSE;
ident->u.func = func;
*pid = ident_to_id(This, ident);
return S_OK;
}
}
*pid = -1;
return DISP_E_UNKNOWNNAME;
}
示例14: wmain
/*****************************************************************************
* Main entry point. This is a console application so we have a wmain() not a
* winmain().
*/
int wmain(int argc, WCHAR *argv[])
{
static const WCHAR nohomeW[] = {'-','n','o','h','o','m','e',0};
WCHAR *url = argv[1];
BSTR display_uri;
DWORD scheme;
IUri *uri;
HRESULT hres;
int ret = 1;
/* DDE used only if -nohome is specified; avoids delay in printing usage info
* when no parameters are passed */
if (url && !strcmpiW( url, nohomeW ))
url = argc > 2 ? argv[2] : get_url_from_dde();
if (!url) {
WINE_ERR( "Usage: winebrowser URL\n" );
return -1;
}
hres = CreateUri(url, Uri_CREATE_ALLOW_IMPLICIT_FILE_SCHEME|Uri_CREATE_FILE_USE_DOS_PATH, 0, &uri);
if(FAILED(hres)) {
WINE_ERR("Failed to parse URL\n");
ret = open_http_url(url);
HeapFree(GetProcessHeap(), 0, ddeString);
return ret;
}
HeapFree(GetProcessHeap(), 0, ddeString);
IUri_GetScheme(uri, &scheme);
if(scheme == URL_SCHEME_FILE) {
IUri *file_uri;
file_uri = convert_file_uri(uri);
if(file_uri) {
IUri_Release(uri);
uri = file_uri;
}else {
WINE_ERR("Failed to convert file URL to unix path\n");
}
}
hres = IUri_GetDisplayUri(uri, &display_uri);
IUri_Release(uri);
if(FAILED(hres))
return -1;
WINE_TRACE("opening %s\n", wine_dbgstr_w(display_uri));
if(scheme == URL_SCHEME_MAILTO)
ret = open_mailto_url(display_uri);
else
/* let the browser decide how to handle the given url */
ret = open_http_url(display_uri);
SysFreeString(display_uri);
return ret;
}
示例15: process_meta_element
static void process_meta_element(HTMLDocumentNode *doc, nsIDOMHTMLMetaElement *meta_element)
{
nsAString http_equiv_str, content_str;
nsresult nsres;
static const WCHAR x_ua_compatibleW[] = {'x','-','u','a','-','c','o','m','p','a','t','i','b','l','e',0};
nsAString_Init(&http_equiv_str, NULL);
nsAString_Init(&content_str, NULL);
nsres = nsIDOMHTMLMetaElement_GetHttpEquiv(meta_element, &http_equiv_str);
if(NS_SUCCEEDED(nsres))
nsres = nsIDOMHTMLMetaElement_GetContent(meta_element, &content_str);
if(NS_SUCCEEDED(nsres)) {
const PRUnichar *http_equiv, *content;
nsAString_GetData(&http_equiv_str, &http_equiv);
nsAString_GetData(&content_str, &content);
TRACE("%s: %s\n", debugstr_w(http_equiv), debugstr_w(content));
if(!strcmpiW(http_equiv, x_ua_compatibleW)) {
compat_mode_t document_mode;
if(parse_ua_compatible(content, &document_mode))
set_document_mode(doc, document_mode, TRUE);
else
FIXME("Unsupported document mode %s\n", debugstr_w(content));
}
}
nsAString_Finish(&http_equiv_str);
nsAString_Finish(&content_str);
}