タグ

ctypesに関するblueleのブックマーク (5)

  • OSDIR

  • バッテリーの状況 - かせきのうさぎさん

    Windows でバッテリーの状況は Win32API の関数を使うと取れる。しかし pywin32 *1 には肝心の GetSystemPowerStatus 関数 *2 がないじゃないか。 しょうがないので伝家の宝刀 ctypes *3 を使うべ。GetSystemPowerStatus 関数自体はそう難しくない。所定の構造体へのポインターを渡すと、バッテリーの情報を入れてくれる、というよくあるパターンだ。これならC初心者の自分にもできるはずだ。 まずは import import ctypes from ctypes import wintypes wintypes には BYTE や DWORD などの型が定義されている。どのように typedef されているのかわざわざ調べなくても済む。 次に、SYSTEM_POWER_STATUS 構造体を作ろう。http://msdn.mic

    バッテリーの状況 - かせきのうさぎさん
  • Pythonでctypesやらwin32apiを使ってドライブの空き容量を調べるサンプル - bonlife

    bonlifeです。久しぶりにPythonに触れてみました。 コピーするフォルダーの容量は、os.walkを使って取得できました が、ドライブの空き容量の求め方がわかりません。仕方がないので、dirコマンドの出力を正規表現で切り出してみました。日語の正規表現がわからないので、dos窓を英語モードにしてからdirコマンドを発行しています。 なんだかあんまりスマートじゃないやり方…。こういうことは、Windowsに直接語りかければ答えが返ってくるはず!ということで調べてみると、GetDiskFreeSpaceExというものがありました。以下のような関数らしい。lpDirectoryName を指定して実行するとアレコレ情報が取得できるみたい。 BOOL GetDiskFreeSpaceEx( LPCTSTR lpDirectoryName, // ディレクトリ名 PULARGE_INTEGE

    Pythonでctypesやらwin32apiを使ってドライブの空き容量を調べるサンプル - bonlife
  • PY習 ctypesモジュール(1)

    今回はctypesモジュールです。 ctypesモジュールは「Pythonのための外部関数ライブラリです。このライブラリは Cと互換性のあるデータ型を提供し、動的リンク/共有ライブラリ内の関数呼び出しを可能にします。動的リンク/共有ライブラリを純粋なPythonでラップするために使うことができます。 」とドキュメントに記載されています。 要は、Pythonから、dllを呼び出せるよ。ってことですね。 ただし、C++形式のDLLは、クラスや派生などが絡むんで、呼び出しには苦労しそうなので、スルーし、C言語形式のDLLのみ試したいと思います。 (尚、COM形式の場合、Python for Windows extensions(PyWin32)に含まれるwin32comモジュールを使うのが良さそうです) まず、使い方をctypesのチュートリアルを見て確認しましょう。 大体どの言語でも同じなので

  • Python Hack-a-thon で発表してきました!! - moriyoshiの日記

    今回は資料の作成が後手に回ってしまい、運営の方々や発表者の皆様には大変迷惑をおかけしました。 さて、今回は ctypes 拡張モジュールに関する内容を発表させていただきました。 ctypes拡張モジュールView more presentations from Moriyoshi Koizumi. php-in-python の使い方 PHP-in-Pythonには、まだドキュメントがありません。インストール方法を簡潔に説明します。 a. Windowsの場合 windows.php.netよりThread-safe版のPHPのバイナリをダウンロードします。 ダウンロードしたアーカイブを適当なディレクトリに展開します。 展開された中身に含まれているphp5ts.dllの場所がPATH環境変数に含まれるようにします。 b. Linux等Free Unixの場合 php.netよりPHPのソー

    Python Hack-a-thon で発表してきました!! - moriyoshiの日記
  • 1