ラベル windows の投稿を表示しています。 すべての投稿を表示
ラベル windows の投稿を表示しています。 すべての投稿を表示

2013年12月2日月曜日

Windows のコマンドプロンプトで grep を使う

Windows のコマンドプロンプトで grep を使いたかったけど無かった。
どうやら findstr を使うらしい。
netstat -an | findstr 5432

2013年5月29日水曜日

.NET Framework で WebBrowser コントロールを使用する際に IE のバージョンを選択する

VBとかC#でWebBrowserコントロールを使用する時に、IEのバージョンを指定したい時が有る。
そんな時はレジストリをいじるといいらしい。

32 bit:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION
64 bit:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION

ここに使用したいEXE名(myapp.exe 等)で新規DWORD値を追加する。
で、以下の通りに値を指定する。

  • 9999 (0x270F)
    • IE9のスタンダードモード。!DOCTYPEは無視する。
  • 9000 (0x2328)
    • IE9のスタンダードモードがベースだが、!DOCTYPEに従う。
  • 8888 (0x22B8)
    • IE8のスタンダードモード。!DOCTYPEは無視する。
  • 8000 (0x1F40)
    • IE8のスタンダードモードがベースだが、!DOCTYPEに従う。
  • 7000 (0x1B58) 
    • IE7のスタンダードモードがベースで、!DOCTYPEに従う。
ちなみに、VisualStudio で開発・デバッグ中にこの機能を有効にしたい場合は myapp.vshost.exe も追加しないといけない。

2013年1月29日火曜日

Windowsのイベントログから起動・終了時間を取得する

System.Diagnostics.EventLog[] logs = System.Diagnostics.EventLog.GetEventLogs(); 
StringBuilder sb = new StringBuilder(); 
foreach (System.Diagnostics.EventLog log in logs) 
{ 
  if (log.Log == "System") 
  { 
    int cnt = 0; 
    for (int i = log.Entries.Count -1 ; i > 0 ; i--) 
    { 
      if (log.Entries[i].Source == "Microsoft-Windows-Kernel-General") 
      { 
        if (log.Entries[i].InstanceId == 12) 
        { 
          sb.AppendLine(log.Entries[i].TimeGenerated.ToString("[yyyy/MM/dd HH:mm:ss]") + "起動"); 
          cnt++; 
        } 
        else if (log.Entries[i].InstanceId == 13) 
        { 
          sb.AppendLine(log.Entries[i].TimeGenerated.ToString("[yyyy/MM/dd HH:mm:ss]") + "終了"); 
          cnt++; 
        } 
      } 
      if (cnt > 10) 
      { 
        break; 
      } 
    } 
  } 
} 
return sb.ToString();