小编bug*_*net的帖子

哪个是在C/C++中将BSTR参数转换为ANSI的更好代码?

到目前为止,我发现我可以用两种(多种?)方式将传入的BSTR转换为ANSI,我很想知道在速度/效率等方面是否比另一种"更好".

我一直使用的方式是使用USES_CONVERSIONW2A宏,例如

BSTR __stdcall F(BSTR p1, BSTR p2 ) {
    USES_CONVERSION;

    LPSTR sNum1 = W2A( p1 );
    LPSTR sNum2 = W2A( p2 );
Run Code Online (Sandbox Code Playgroud)

然而,最近我遇到了另一种技术:

BSTR __stdcall F(BSTR p1, BSTR p2 ) {
    long amt = wcstombs( NULL, p1, 1 );
    sNum1 = (char *) malloc( amt ); 
    wcstombs( sNum1, p1, amt );
    *(sNum1 + amt) = '\0';

    amt = wcstombs( NULL, p2, 1 );
    sNum2 = (char *) malloc( amt ); 
    wcstombs( sNum2, p2, amt ); …
Run Code Online (Sandbox Code Playgroud)

c c++ string bstr cstring

3
推荐指数
1
解决办法
4761
查看次数

如何计算10以外基数的浮点数?

鉴于维基百科关于Radix Point的文章,如何计算二进制当量为10.1或十六进制当量为17.17?对于前者,十分之一的二进制当量是多少?对于后者,十六进制表示为17/100?

我正在寻找一种算法,而不仅仅是那两个例子的解决方案.

algorithm floating-point decimal-point radix-point radix

3
推荐指数
1
解决办法
2487
查看次数

在计算它之前,可以知道一个因子有多大吗?

我正在使用GMP来计算非常大的因子(例如234234!).在进行计算之前,有没有什么方法可以知道结果将会(或可能)长多少位数?

language-agnostic gmp factorial

3
推荐指数
2
解决办法
1379
查看次数

如何以编程方式更改工作站的IP地址?

在VBScript(或其他一些脚本语言)中使用注册表调整可能有一些很好的方法(在Windows XP中).谁知道怎么样?

registry vbscript scripting windows-xp ip-address

3
推荐指数
1
解决办法
1408
查看次数

如何使用Tcl和TclApp为Win32编写COM EXE?

我想可以使用TclApp创建一个可以用作COM服务器EXE的Win32 EXE.

有人试过这个,还是认真思考这个想法太可怕了?

基本上,我想在Tcl中做我已经可以使用PerlCtrl做的事情.

com perl tcl activex-exe

3
推荐指数
1
解决办法
117
查看次数

如何修复PHP模块线程安全/非线程安全不匹配?

这超出了错误日志:

PHP Warning: PHP Startup: BOPEE Extension: Unable to initialize module
Module compiled with build ID=API20090626,TS,VC9
PHP    compiled with build ID=API20090626,NTS,VC9
These options need to match
 in Unknown on line 0

PHP Warning:  PHP Startup: CustomExt Module: Unable to initialize module
Module compiled with build ID=API20090626,TS,VC9
PHP    compiled with build ID=API20090626,NTS,VC9
These options need to match
 in Unknown on line 0
Run Code Online (Sandbox Code Playgroud)

我如何获得PHP的非线程安全源?我在windows.php.net/download上找到的唯一下载链接是http://windows.php.net/downloads/releases/php-5.3.2-src.zip,这似乎是线程安全的代码---或者有没有办法告诉消息来源它实际上是非线程安全的?

我已经尝试过--disable-zts使用命令行configure.bat但是虽然这对输出产生了很好的影响configure.bat,但它似乎并没有使源代码更少线程安全.

php winapi php-extension

3
推荐指数
1
解决办法
3581
查看次数

正则表达式优化工具?

RegexBuddy是一个很棒的工具.我想要的是一个优化正则表达式的工具; 采取一些表达式并将它们缩小到较小的数字.有什么建议?

regex

3
推荐指数
2
解决办法
3426
查看次数

如何在WordPress页面上更改标题?

上下文:WordPress 5.4.5,Yoast 3.7.1

我是一个可以访问客户端站点的插件开发人员.该网站安装了Yoast 3.7.1,我想知道这是否重要因为无论我做什么我都无法改变404页面title.

现在在StackOverflow上的其他页面上提出了类似的问题(这里,这里这里例如).那些回答的人询问是否header.php正确嵌入了一个电话wp_title().这就是当前主题中的内容header.php:

    <title><?php wp_title( '|', true, 'right' ); ?></title> 
Run Code Online (Sandbox Code Playgroud)

有趣的是,在我的404.php页面中,wp_get_document_title()告诉我文档标题Page not found - XXXX即使wp_title上面的调用指定分隔符为|.Yoast对标题的重写已被禁用,所以我不确定那些短跑的来源.

我的插件执行REST调用,并从异地提取内容以包含在页面中.该内容的一部分是要使用的文本title.

在以前的客户端站点上,我已经能够执行以下操作:

add_filter('wp_title', 'change_404_title');
function change_404_title($title) {
    if (is_404()) 
    {
        global $plugin_title;
        if (!empty($plugin_title)) 
        {
             $title = $plugin_title;
        }
    }
    return $title;
}
Run Code Online (Sandbox Code Playgroud)

但是,在这个网站上,这是行不通的.

我试过,根据使用的WordPress版本,挂钩pre_get_document_title过滤器,即

add_filter('pre_get_document_title', 'change_404_title');
Run Code Online (Sandbox Code Playgroud)

但再次无济于事.我正在阅读Yoast ...

php wordpress yoast

3
推荐指数
1
解决办法
4810
查看次数

如何区分iOS7 useragent字符串中的Chrome和Safari?

有用的细节是粗略的,或者我没有找到正确的地方.

就a而言,什么navigator.userAgent.match()可以区分iOS7,iPad或iPhone上的Chrome和Safari?

javascript safari user-agent google-chrome ios7

2
推荐指数
1
解决办法
3564
查看次数

在Google Apps脚本中,是否可以通过try / catch捕获超时,或者超时发生在更高级别?

因此,我有一些代码可以通过单击按钮运行。有很多功能,一个接一个。其中一些调用了REST服务。有时,整个shebang会运行6分钟以上,因此会遇到超时屏障,与声音屏障不同,该屏障无法打破。

超时是否可以捕获?我是否可以将最可能的违规者包裹在try / catch中,并在适当的时候对catch块进行评估?还是我坚持尝试使事情表现得如此出色以至于我从来没有碰壁?

google-apps-script google-sheets-api

2
推荐指数
1
解决办法
54
查看次数