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();
2013年1月29日火曜日
Windowsのイベントログから起動・終了時間を取得する
C#でEval
CSharpCodeProvider c = new CSharpCodeProvider(); CompilerParameters cp = new CompilerParameters(); cp.ReferencedAssemblies.Add("system.dll"); cp.CompilerOptions = "/t:library"; cp.GenerateInMemory = true; StringBuilder sb = new StringBuilder(""); sb.Append("using System;\n" ); sb.Append("namespace CSCodeEvaler{ \n"); sb.Append("public class CSCodeEvaler{ \n"); sb.Append("public object EvalCode(){\n"); sb.Append("return Environment.ProcessorCount.ToString(); \n"); sb.Append("} \n"); sb.Append("} \n"); sb.Append("}\n"); CompilerResults cr = icc.CompileAssemblyFromSource(cp, sb.ToString()); if (cr.Errors.Count > 0) { MessageBox.Show("ERROR: " + cr.Errors[0].ErrorText, "Error evaluating cs code", MessageBoxButtons.OK, MessageBoxIcon.Error); return null; } System.Reflection.Assembly a = cr.CompiledAssembly; object o = a.CreateInstance("CSCodeEvaler.CSCodeEvaler"); Type t = o.GetType(); MethodInfo mi = t.GetMethod("EvalCode"); object s = mi.Invoke(o, null); return s;
VB.netで画面キャプチャして保存
Dim p As New Point(0, 0) Dim s As New Size(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height) Dim bmp As New Bitmap(s.Width, s.Height) Dim g As Graphics = Graphics.FromImage(bmp) g.CopyFromScreen(p, New Point(0, 0), s) g.Dispose() PictureBox1.Image = bmp bmp.Save("C:\***.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)
2013年1月28日月曜日
K-9 Mail で outlook.com のメールを設定する
AndroidのK-9 Mailでoutlook.comのメールを使えるよう設定する。
Exchange ActiveSync 対応は日本語版バイナリを使用する必要が有るらしい。
https://sites.google.com/site/k9mailja/k9mailja_package
- 「アカウント追加」からメールアドレスとパスワードを入力。
- 「POP3 サーバ」を選択
- アカウント名に「@outlook.com」を追加、POP3サーバに「pop3.live.com」を入力、保護された接続で「SSLを使用する」を選択。
- SMTPサーバに「smtp.live.com」を入力、保護された接続で「TLSを使用する」を選択。
Exchange ActiveSync 対応は日本語版バイナリを使用する必要が有るらしい。
https://sites.google.com/site/k9mailja/k9mailja_package
Linuxのファイル削除権限
Linux でそのファイルが削除できるかどうかは、対象のファイルではなくそのファイルが入っているディレクトリの権限に因る。
ディレクトリに書き込み権限(-w-)があれば、ファイルの削除や新規作成が可能。
なのでファイルが000(---------)でもディレクトリが222(-w--w--w-)とかで有れば削除できる。
ディレクトリに書き込み権限(-w-)があれば、ファイルの削除や新規作成が可能。
なのでファイルが000(---------)でもディレクトリが222(-w--w--w-)とかで有れば削除できる。
2013年1月25日金曜日
VB.NET でメッセージボックスを最前面に表示する
MessageBox.Show( _ "最前面に表示されます。", _ "", _ MessageBoxButtons.OK, _ MessageBoxIcon.Information, _ MessageBoxDefaultButton.Button1, _ MessageBoxOptions.DefaultDesktopOnly)
VB.NET で二重起動防止
If Diagnostics.Process.GetProcessesByName( _ Diagnostics.Process.GetCurrentProcess.ProcessName).Length > 1 Then MessageBox.Show("二重起動できません。") End End If
2013年1月24日木曜日
Google Maps JavaScript API V3 で KML の読み込み
jQuery のロードとか含めて以下の感じ。
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">google.load("jquery", "1.7");</script>
<script src="http://maps.google.com/maps/api/js?v=3&sensor=false®ion=JP" type="text/javascript" charset="UTF-8"></script>
<script type="text/javascript">
//<![CDATA[
$(document).ready(function() {
var opts = {
zoom: 10,
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: new google.maps.LatLng(35.00000, 135.00000)
};
map = new google.maps.Map($("#map").get(0), opts);
var kmlLayer = new google.maps.KmlLayer("http://***/***.kml");
kmlLayer.setMap(map);
});
//]]>
</script>
ラベル:
google,
javascript,
jquery,
map
町丁・字等境界のGISデータを取得する
- eStat 政府統計の総合窓口にアクセスする。
http://www.e-stat.go.jp/SG1/estat/eStatTopPortal.do - 地図や図表で見る > 地図で見る統計(統計GIS) > データダウンロード へ進む
- [Step1]平成**年国勢調査(小地域) を選択
- [Step2]世帯人員別一般世帯数 を選択して「統計表各種データダウンロードへ」を押す
- [Step3]地域選択 で取得したい地域を選ぶ
- [Step4]境界データを選択 で形式を選ぶ
ShapeかG-XML形式でダウンロード可能。
Apacheでディレクトリのファイル一覧表示をやめたい
Options Indexes FollowSymLinksとかなってるのを
Options -Indexes FollowSymLinksにする。
ApacheでBasic認証とIP制限を組み合わせる
.htaccess で以下の感じで。
AuthType Basic AuthName "Input your ID and Password" AuthUserFile /var/www/.htpasswd require valid-user Satisfy any Order Deny,Allow Allow From 192.168 Deny From AllSatisfy any を使って書けばいい。
Macで画面キャプチャ(スクリーンショット)
画面全体
マウスで指定した部分
選択したウィンドウ
command+shift+3
マウスで指定した部分
command+shift+4
選択したウィンドウ
command+shift+4+space
登録:
投稿 (Atom)