2008-09-01から1ヶ月間の記事一覧

SOCKSv5 の接続コード

認証不要のSOCKSv5サーバにTCPで繋ぐだけwww 接続先もIPじゃないと駄目www 将来に向けた布石のつもりではある. from sys import exit, stdout, stderr from socket import socket, AF_INET, SOCK_STREAM s = socket(AF_INET, SOCK_STREAM) try: s.connect(('…

TRange

Python の yield が恋しい. unit MyUtils.Range; interface uses Generics.Collections; type TRange = record strict private FStartIndex: Integer; FEndIndex: Integer; public constructor Create(StartIndex, EndIndex: Integer); type TEnumerator = c…

PChar + Char の書き換え

Delphi 2009 では理由不明ながら PChar + Char が ShortString になる?ようだ. 更に何かまずいらしく、それを文字列変数に突っ込んで参照するとアクセスバイオレーションが起きる. (バグ???) 警告もこんな感じで出る. [DCC 警告] main.pas(33): W1057 文字列…

Char in CharSet の書き換え

Delphi 2009 では string が UnicodeString になった関係で Ch in ['0' .. '9', '.'] みたいに書くと下記のような警告が出る. [DCC 警告] main.pas(391): W1050 set 式で WideChar がバイト char に縮小されました。'CharInSet' 関数を 'SysUtils' ユニット…

文字列の SJIS での保存

Delphi 2009 では string が UnicodeString になった関係で Stream.WriteBuffer(S[1], Length(S)) ではおかしくなる. TBytes (array of Byte) に変換してから書き込む必要がある. var Stream: TStream; Buffer: TBytes; begin Stream := TFileStream.Create(…

NTP から現在時刻を取得する関数

何で書いたのか記憶に無いのだが、発掘されたので. def ntp_now(server, port = 123): from socket import socket, AF_INET, SOCK_DGRAM from struct import unpack from datetime import datetime s = socket(AF_INET, SOCK_DGRAM) try: s.sendto('\x1b' + …