Archive for the ‘windows’ Category

vim刷新firefox

Monday, September 20th, 2010

yangsong 同学分享了一篇vim保存文件时刷新firefox的文章,用到了firefox的插架监听个端口通信的。貌似window下还用不了。我这firefox已经够慢了,对插件相当的节制,所以做个了发消息的,开始刷新IE很简单,sendmessage就行,firefox比较哏,屏了,只好去模拟按键……

代码如下

/*
 * jondynet http://jondy.net/
 * gcc firefox_f5.c -DWINVER=0x0501
 */
#include "windows.h"
#include "Winuser.h"

int main (int argc, char * argv [])
{
    HWND hwnd = FindWindow ("MozillaUIWindowClass", NULL);
    if (hwnd == 0)
    {
       MessageBox (0, "Where is firefox!", "Error", MB_ICONINFORMATION);
       return 0;
    }
    //char buffer[300];
    //SendMessage(hwnd,WM_GETTEXT,sizeof(buffer),(LPARAM)buffer);
    //MessageBox(NULL,buffer,"Captured Text",MB_OK);

    SetForegroundWindow(hwnd);
    //Sleep(2000);

    // minimize
    //SendMessage(hwnd,WM_SYSCOMMAND,SC_MINIMIZE,0);

    // ctrl + f5
    //PostMessage(hwnd,WM_KEYDOWN,VK_F5,0);
    //PostMessage(hwnd,WM_KEYUP,VK_F5,0); 

    //PostMessage(hwnd,WM_KEYDOWN,VK_CONTROL,0);
    //PostMessage(hwnd,WM_KEYDOWN,'R',0);
    //PostMessage(hwnd,WM_KEYUP,'R',0);
    //PostMessage(hwnd,WM_KEYUP,VK_CONTROL,0); 

    // SendInput
    INPUT inpdd[1];
    KEYBDINPUT kbyinp; 

    kbyinp.wVk = VK_F5;
    kbyinp.wScan = 0x3F;
    kbyinp.time = 0;
    kbyinp.dwFlags = 0;
    kbyinp.dwExtraInfo = 0;
    inpdd[0].type = INPUT_KEYBOARD;
    inpdd[0].ki = kbyinp;
    SendInput(1,&inpdd[0],sizeof(inpdd[0]));

    //关闭
    //PostMessage(hwnd, WM_CLOSE, 0, 0);
    return 0;
}

vim的设置看这里
" autocmd BufWriteCmd *.html,*.css,*.tmpl :call Refresh_firefox()
" function! Refresh_firefox()
"   if &modified
"     write
"     silent !firefox_f5
"     "silent !echo  'vimYo = content.window.pageYOffset;
"     "             \ vimXo = content.window.pageXOffset;
"     "             \ BrowserReload();
"     "             \ content.window.scrollTo(vimXo,vimYo);
"     "             \ repl.quit();'  |
"     "             \ nc localhost 4242 2>&1 > /dev/null
"   endif
" endfunction


silent !firefox_f5 这个是调用俺这个的,下边注释的那个是用插件的。

XP显示桌面的功能

Thursday, February 15th, 2007

某个猪头把显示桌面的快捷方式按SHIFT删除了,怎么办呢?

看看显示桌面的类型Windows Explorer Command

其实是显示桌面.scf这个文件,内容为

[Shell]
Command=2
IconFile=explorer.exe,3
[Taskbar]
Command=ToggleDesktop

把以上内容新建文本文档然后另存为显示桌面.scf就可以了。

华硕(ASUS)P5LD2 SE主板声卡杂音及网卡问题解决方法

Saturday, September 23rd, 2006

华硕(ASUS)P5LD2 SE主板声卡杂音问题解决办法

CPU是PD930

主板用的华硕(ASUS)P5LD2 SE

显卡7600GT

系统是XP SP2 ,在播放电影或MP3是声卡经常出现唰唰响的

杂音, 解决方法是安装华硕M9A的同芯片驱动.

网卡在局域网传文件提示路径深错误的下载最新的网卡驱动就可以了.

IIS设置python支持的CGI

Tuesday, September 19th, 2006

1。安装好Python;
2。配置IIS:
a.打开管理工具-〉Internet信息服务;
b.在网站属性上右键,进入属性设置;
c.转到主目录页,进入应用程序配置;
d.添加一个映射:可执行文件写:C:\Python23\Python.exe ”%s” %s
注意Pythong的路径要指向你安装Python的位置,同时注意参数间的空格。
扩展名写:.py
动作限制为:GET,HEAD,POST
e.选中脚本引擎,选中检查文件是否存在;
f.一路确定完成配置。
3。编写CGI脚本:

import cgi                                                                 #倒入cgi模块print ‘Content-Type: text/html’                                   #必须,输出HTML文档头
print # Blank line marking end of HTTP headers        #必须,文档头必须以空行结束

cgiParameters = cgi.FieldStorage()                            #取得Post或Get过来的参数集

# 检查看是否是我们需要的参数
if not (cgiParameters.has_key(“name”) and cgiParameters.has_key(“address”)):#如果不是输出form,要求填写name和address
print “<form action=” method=’post’ name=’form’><input name=’name’ id=’name’><input name=’address’ id=’address’><input type=’submit’ value=’submit’></form>”
print “Please fill in the name and address fields.”
else:                                                                           #如果是我们要求的参数,输出参数内容
print “<p>name:”, cgiParameters["name"].value
print “<p>address:”, cgiParameters["address"].value

4。在IIS里写Pythong的CGI脚本,就是这么简单。

系统启动NTLOADER和GRUB

Thursday, September 14th, 2006

我的系统是XP和UBUNTU

启动使用了vfloppy虚拟软盘。

BOOT.INI内容

[boot loader]
timeout=1
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=”XP” /noexecute=optin /fastdetect
C:\BOOT\BOOTDISK.bin=”vfloppy”
C:\BOOT\grldr=”Grub”

因为XP使用的比较多,没事从虚拟软盘启动GHOST恢复一下就没GRUB了

所以用NTLOADER进GRUB去恢复:

重新启动,进去GRUB命令行

grub> find /boot/grub/menu.lst #得到menu.lst的位置如:hd(0,7)
grub> root (hd0,7)
grub> setup (hd0)
grub> reboot

如果不安装GRUB,仅引导LINUX可使用如下命令实现:

grub> find /boot/vmlinuz
(hd0,7)

grub> root (hd0,7)
grub> kernel /boot/vmlinuz root=/dev/hda8
grub> boot