.NETの最近のブログ記事


電源、バッテリーに関する情報を取得する: .NET Tips: C#, VB.NET, Visual Studio

システムをスタンバイ、休止状態にする: .NET Tips: C#, VB.NET, Visual Studio

WMIを使ってOSの情報を取得する: .NET Tips: C#, VB.NET, Visual Studio

→ 最後にブートされた日時
     Console.WriteLine("LastBootUpTime:{0}", mo("LastBootUpTime"))

ディスプレイスリープの監視をする処理がなかなか見つからない。
そしてそれ以外の情報が色々引っかかる。

SetThreadExecutionState()
 → スリープへの移行を回避させる

スリープさせる(Win32 API)
 → PostMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, 2) ;

ちなみに、DateTime.Ticks 値の各タイマ刻みは、100 ナノ秒間隔なので注意。

どうやら、ディスプレイがスリープするとき、「その時アクティブなウインドウ」にWM_SYSCOMMANDメッセージが送られるらしい。(wParam=SC_MONITORPOWER,lParam=2)

メッセージの値

WM_SYSCOMMAND

で、常駐しているソフトからそれを検知するにはグローバルフックを使うことになるのだが、.NETアプリは、直接グローバルフックを使うDLLは作れないらしい。

しかたがないので、次回C++でフック用のDLLを作る予定。


グローバルフック - ぬぞうWiki

ついで。stringに書式適用するには

数値を右詰めや0埋めで文字列化するには?[C#、VB] - @IT

.NETアプリでのデータ保存はずっとXMLシリアライズで対応していたんだけど、SQLiteを使ってみることに。

C#からSQLiteを使ってみた - mitc - 日記
わりと簡単。

PupSQLiteverというよさげな管理ツールを見つけた。

LINQ使ったことがないのでよく分からないけど使いやすいのか?
そしてSQLiteで使うように設定するのは簡単なのだろうか?
IEのInput type = file 属性の入力フォームに自動で文字を入れるためにSendKeys.SendWait()関数を使っていたのだけど、全角文字が入ると勝手にIMEがONになって、その後の半角文字が誤った入力になってしまった。

ImmDisableIME()関数を呼べばIMEを無効にできる。

http://msdn.microsoft.com/ja-jp/library/cc447967.aspx


こちらはWin32 APIなので、そのままでは.NETから呼ぶことができない。

.NETから呼ぶためには、いくつかの手続きが必要になる。

全体の流れ

http://d.hatena.ne.jp/wata_d/20070919/1190166134

using System.Runtime.InteropServices;

DllImport

型名の対応はこちらにまとまっている

http://www.atmarkit.co.jp/fdotnet/dotnettips/024w32api/w32api.html

Webコントロールを自動で制御して色々やろうという
ツールを作っているのだけど。


C#のWebBrowserコンポーネントからJavaScriptを実行
http://shokai.org/blog/archives/1234


フォームのマルチスレッドで
http://dobon.net/vb/bbs/log3-8/4707.html

Application.DoEvents();
入れる

JavaScriptの実行完了をとりたいんだけど IsBusyやReadyStateではとれないみたい
しかたないので実行前のinnerHtmlを保存しておいてwhileでsleepしつつ変化を監視することで対応

selectタグのoption選択してクリック
http://social.msdn.microsoft.com/Forums/ja-JP/vbexpressja/thread/2565067a-715f-4014-9d8b-b7fef5458bab


まとまってる資料が欲しいんだけど...
探し方が悪いんだろうか

このアーカイブについて

このページには、過去に書かれたブログ記事のうち.NETカテゴリに属しているものが含まれています。

次のカテゴリはMovableTypeです。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

.NET: 月別アーカイブ

Powered by Movable Type 4.0