Win32API プロセストークンのユーザー情報を取得

プロセストークンのユーザー情報を取得するには、 OpenProcessToken関数 GetTokenInformation関数 LookupAccountSid関数 を用いる手順は、以下のとおり No項目 1OpenProcessToken関数で、プロセストークンを取得する 2GetTokenInformation関数で、トークン情…

Win32API プロセストークンのDACL情報を取得する

プロセストークンのDACL情報を取得する手順は、以下のようになる。 No項目 1OpenProcessToken関数で、プロセストークンを取得する 2GetTokenInformation関数で、第2引数にTokenDefaultDaclを指定してプロセストークンのDACLを取得する 3GetAclInformation関…

Win32API プロセスのグループ情報を取得する

プロセスのグループ情報を取得するためには、GetKernelObjectSecurity関数、GetSecurityDescriptorGroup関数、LookupAccountSid関数を用いる手順は以下のとおり No項目 1GetKernelObjectSecurity関数で、カーネルオブジェクトのセキュリティ記述子を取得する…

Win32API プロセスの所有者情報を取得する

プロセスの所有者情報を取得するためには、GetKernelObjectSecurity関数、GetSecurityDescriptorOwner関数、LookupAccountSid関数を用いる手順は以下のとおり No項目 1GetKernelObjectSecurity関数で、カーネルオブジェクトのセキュリティ記述子を取得する 2…

Win32API ファイルにセキュリティ情報を設定する SetFileSecurity

ファイルにセキュリティ情報(ACL)を設定するためには、SetFileSecurity関数を用いる。 No処理内容 1InitializeSecurityDescriptor関数で、セキュリティ記述子を初期化 2InitializeAcl関数で、DACLを初期化 3LookupAccountName関数で、アカウントに対するSID…

Win32API プロセスのDACL情報を取得する

プロセス(ミューテックスなどのようなカーネルオブジェクトも含む)のDACLを取得するためには、GetKernelObjectSecurity関数やGetSecurityDescriptorDacl関数などを用いる。 プロセスカーネルオブジェクトのDACL情報を取得する手順を以下に示す。 No処理内容 …

Win32API レジストリのACEを列挙する

レジストリのACEを列挙するためには、RegGetKeySecurity関数やGetSecurityDescriptorDacl関数を用いる。 レジストリのACEを列挙する手順を以下に示す。 No処理内容 1RegGetKeySecurity関数で、レジストリのセキュリティ記述子を取得する 2GetSecurityDescrip…

Win32API ファイルやディレクトリのACEを列挙する

ファイルのACEを列挙するためには、GetFileSecurity, GetSecurityDescriptorDaclを用いる。 手順は以下のようになる。 No処理内容 1GetFileSecurity関数で、ファイルまたはディレクトリのセキュリティ記述子を取得する 2GetSecurityDescriptorDacl関数で、セ…

3/15 - 3/18の計画停電 東京電力のプレスリリースより

東京電力のサイトより http://www.tepco.co.jp/cc/press/11031414-j.html 3月15日(火)の計画停電の実施予定等について 平成23年3月14日 東京電力株式会社 3月11日に発生いたしました東北地方太平洋沖地震により、当社供給区域におけ る電力需給が極めて…

リンク: 首都圏の鉄道運行状況

http://transit.goo.ne.jp/unkou/kantou.html

3/15 JR東日本運転計画 JR東日本のプレスリリースより

3/15のJR東日本の運転計画 http://www.jreast.co.jp/ 東京電力の計画停電に伴うJR東日本管内の運行の影響について 2011年3月15日 東京電力による計画停電により、首都圏の各線区において運転を見合わせておりますが、以下の線区については、順次運行を再開し…

計画停電(3/14) 東京電力の発表資料その2

より詳細な資料がでました。 東京: http://www.tepco.co.jp/images/tokyo.pdf 埼玉: http://www.tepco.co.jp/images/saitama.pdf 群馬: http://www.tepco.co.jp/images/gunma.pdf 千葉: http://www.tepco.co.jp/images/chiba.pdf 神奈川: http://www.tepco.c…

計画停電(3/14) 東京電力の発表資料

Yahooへのリンク http://headlines.yahoo.co.jp/hl?a=20110313-00000582-yom-soci

リンク:傍観者ではなく“当事者としてできること”--東北地方太平洋沖地震

傍観者ではなく“当事者としてできること”--東北地方太平洋沖地震 http://japan.cnet.com/news/topics/35000418/?ref= 地震発生後、Twitterで投稿された心に残るつぶやき http://prayforjapan.jp/tweet.html

「東北関東大震災」 Ustream

NHK Live TV : Ustream NHK WORLD TV Stream videos at Ustream NHKラジオ第一 Free video chat by Ustream TBS Live Broadcasting by UstreamFuji TV Live TV : Ustream TV Asahi Live TV : Ustream

Win32API セキュリティ属性を指定してファイルを作成する

セキュリティ属性(ACL:アクセス制御リスト)を指定してファイルを作成するには、PSECURITY_ATTRIBUTESオブジェクトを正しく設定して、CreateFile関数の第4引数に渡して呼び出す必要がある。そのためのステップは以下のようになる。 1InitializeSecurityDes…

Win32API IsNetworkAlive ネットワーク接続が有効かどうかを調べる

IsNetworkAlive関数は、Sensapi.hで以下のように定義されている。 Bool IsNetworkAlive( __out LPDWORD lpdwFlags );引数 引数のlpdwFlagsは、どのタイプのネットワーク接続が有効であるかを示す。この引数は以下の2つの値のいずれかになる。 lpdwFlags説明…

WinSock TCPクライアントを作成する

WinSockでTCPクライアントを開発するには、以下の手順で行う。 1.WSAStartup関数でWinSockを初期化する 2.gethostbyname関数で接続先のIPアドレスを取得する(IPアドレスが既に分かっている場合は必要なし) 3.ソケットアドレス構造体(struct sockaddr_in)オブ…

WinSock gethostbyaddr

gethostbyaddrは、IPアドレスからホスト情報を取得する(逆引き)。 gethostbyaddr関数は以下のように定義されている struct hostent FAR * PASCAL FAR gethostbyaddr( IN const char FAR * addr, //取得したいホスト情報のインターネットアドレス IN int le…

WinSock gethostbyname

gethostbynameは、ホスト名から、ホスト情報(struct hostent構造体)を取得する。gethostbynameは、以下のように定義されている。 struct hostent* FAR gethostbyname( __in const char *name //ホスト名 );gethostbyname関数が失敗したときには、NULLポイン…

WinSock WSAStartupについて

WSAStartupは以下のように定義されている。 int WSAStartup( __in WORD wVersionRequested, //使用したいWinSockのバージョン __out LPWSADATA lpWSAData //WSADATA構造体へのポインタ ); WSAStartupの戻り値は、以下のとおり 戻り値説明 WSASYSNOTREADY基礎…

Visual C++ 2010 で正規表現

Visual C++ 2010でTR1で定義されていた正規表現がstd名前空間に取り込まれて使用できるようになったということで、試してみる。 TR1ということで、使い方はboostとほぼ同じようです。regex_searchで、正規表現にマッチさせる #include <regex> #include <string> #include <iostream> </iostream></string></regex>…

Win32 API Path Routines

Win32 API Path RoutinesWin32 APIでパスを扱うには shlwapi.h に定義されている関数群(Path Routines)を使用する。その際、shlwapi.h をインクルードし、shlwapi.lib をリンクする必要がある。 Path Routinesには、以下のような関数がある。 PathAddBacksla…

Win32API クリティカルセクションとイベントを用いた生産者・消費者パターン

マルチスレッドプログラミングの代表的なデザインパターンである「生産者・消費者パターン」をWin32 APIで実現する。 #include <windows.h> #include <process.h> #include <stdio.h> const int MaxRequest = 10; int iQueue[MaxRequest];//リクエストを溜めておくキュー(待ち行列) int he</stdio.h></process.h></windows.h>…

Win32API IPHLPAPI ARPテーブルにエントリを追加する CreateIpNetEntry

ARPテーブルにエントリを追加するには、CreateIpNetEntry関数を使用する。CreateIpNetEntry関数のプロトタイプは以下の通り。 DWORD CreateIpNetEntry( __in PMIB_IPNETROW pArpEntry );CreateIpNetEntry関数の引数に用いられるMIB_IPNETROW構造体は、iprtrm…

Win32API IPHLPAPI ネットワークアダプタにIPアドレスを追加する AddIPAddress

ネットワークアダプタにIPアドレスを追加するには、IPヘルパーAPIのAddIPAddress関数を用いる。AddIPAddress関数のプロトタイプ DWORD AddIPAddress( __in IPAddr Address, //ネットワークアダプタに追加するIPアドレス __in IPMask IpMask, //ネットマスク …

Win32API コンソールスクリーンバッファのサイズを設定する SetConsoleScreenBufferSize

既定の状態ではコンソールに多数の行からなる文字列を出力すると、先に出力した文字列が消えてしまって、元に戻ってみたいときに見ることができなくなってしまう。また、コンソールに出力する行が非常に長いと意図しないところで改行が入り、見にくくなって…

Win32API コンソールに送られた信号を処理する SetConsoleCtrlHandler

「Ctrl+C」や コンソールが閉じられたときなどのイベントを検知し、処理するには、SetConsoleCtrlHandler関数を用いる。SetConsoleCtrlHandlerのプロトタイプ BOOL SetConsoleCtrlHandler( PHANDLER_ROUTINE HandlerRoutine, // ハンドラ関数のアドレス BOOL…

Win32API スクリーンバッファの指定した座標から文字を書き込む FillConsoleOutputCharacter

スクリーンバッファの指定した座標から文字を書き込むには、FillConsoleOutputCharacter関数を用いる。FileConsoleOutputCharacterのプロトタイプ BOOL FillConsoleOutputCharacter( HANDLE hConsoleOutput, // スクリーンバッファのハンドル TCHAR cCharact…

Win32API コンソールスクリーンバッファのカーソル位置を設定する SetConsoleCursorPosition

コンソールスクリーンバッファのカーソル位置を設定するには、 SetConsoleCursorPosition関数を用いる。SetConsoleCursorPositionのプロトタイプ BOOL SetConsoleCursorPosition( HANDLE hConsoleOutput, // コンソールスクリーンバッファのハンドル COORD d…