Archive for 八月, 2009

windows7下解决华大银盾IE8白屏问题

昨天转帐,WIN7下到到最后一步死活无法弹出证书选择框,而使用建行自带的华大更新程序,倒是可以弹出U盾输入框了,但无论输入什么,都出现证书选择错误,无法使用,网上找了一下解决方法,综合如下

Windows 7中,如果你是使用中国建设银行(或中国农业银行)华大智宝网银盾的用户,可能从Build 7100之后,就再也无法使用网银了吧?具体症状为在输入完交易密码后,本该出现的证书选择框为空白小窗口,当关闭后提示操作失败。如果你是如上情况,那么,恭喜你,通过以下方法,你就可以成功使用!

启动注册表编辑器
开始→regedit
找到以下分支
32 bit(建行): HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\CIDC Cryptographic Service Provider v2.0.0
32 bit(建行): HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\ZGHD Cryptographic Service Provider v1.0
64 bit(建行): HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Cryptography\Defaults\Provider\CIDC Cryptographic Service Provider v2.0.0
64 bit(农行): HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Cryptography\Defaults\Provider\ZGHD Cryptographic Service Provider v1.0

修改Image Path值
32 bit(建行):%SystemRoot%\System32\CIDC_CSP.dll
32 bit(农行):%SystemRoot%\System32\GP_MINCSP.dll
64 bit(建行):%SystemRoot%\SysWOW64\CIDC_CSP.dll
64 bit(农行):%SystemRoot%\SysWOW64\GP_MINCSP.dll

以管理员身份运行USBKEY程序,解决问题

10 Comments

新建文件自动编号的思路与实现

要求:在系统中 在新建文件是可以实现自动编号。比如新建文本文件 默认文件名是:新建 文本文档.txt,如果继续新建时文件名自动变了:新建 文本文档 (2).txt, 以后就是 3,4,5….请问这种算法用PHP怎么实现。
思路,原来想用循环来做,后来想想,用计数器递增吧,简单高效,这个TME可以是数据库,可以文件,可以是配置文件,看你怎么做了,循环只是在维护的时候使用的,如果每建一个新文件也得循环一次,那得累死,缓存无处不在

<?php
$dir="/web/csp/images/test/";
if(!file_exists($dir.'cache.txt')){
    file_put_contents($dir.'cache.txt',1);
    file_put_contents($dir.'新建文件.txt','');
}else{
    $num = file_get_contents($dir.'cache.txt');
    $num ++ ;
    $name = '新建文件 ('.$num.').txt';
    file_put_contents($dir.'cache.txt',$num);
    file_put_contents($dir.$name,'');
}?>

银子童鞋重写后的

<?php
function createFile($filename, $content = '')
{
    if(file_exists($filename . '.tmp'))
    {
        $num = (int) file_get_contents($filename . '.tmp') + 1;
        $fileinfo = pathinfo($filename);
        file_put_contents($fileinfo['filename'] . '(' . $num . ').' .$fileinfo['extension'], $content);
        file_put_contents($filename . '.tmp', $num);
    }
    else
    {
        file_put_contents($filename, $content);
        file_put_contents($filename . '.tmp', 1);
    }
}
createFile('test.txt');
?>

第三种,循环的

<?php

$files = scandir('.');    //此代码在web根目录下写就
$num = 0;
$str = '新建 文本文档';
foreach ($files as $k=> $file) {
    if (is_file($file) && preg_match('/(.*)\((\d+)\)\.txt/', $file, $matched)) {
        $num = $matched[2]>$num ? $matched[2] : $num;
    }
}
$filename = $num == 0 ? $str . '(1).txt' : $str . '(' . ($num+1) . ').txt';
if (fopen($filename, 'w')) {
    echo '成功创建文件:' . $filename;
}
?>

6 Comments