2009年7月13日月曜日

WMDropFiles

var //アイオン(AION)
P : array[0..255] of Char; //AION ジケル RMT
dropfilescount : integer; //アイオン(AION) 情報
i : integer;
DropFiles : string;
begin
inherited;
dropfilescount := DragQueryFile(Msg.wParam, $FFFFFFFF, nil, 0);
for i := 0 to dropfilescount - 1 do
begin
DragQueryFile(Msg.wParam, I, P, 255);
DropFiles := trim(DropFiles) + #13#10 + P;
end;
DropFiles := trim(DropFiles);
if Assigned(FOnDropFiles) then
try FonDropFiles(self, DropFiles);
except
end;
DragFinish(Msg.wParam);

2009年7月10日金曜日

StartNet

function StartNet(Host: string; Port: Integer; var Sock: Integer): Bool; //AION イズラフェル RMT
var
WSAData: TWSAData;
FSocket: Integer;
SockAddrIn: TSockAddrIn;
Err: Integer;
begin
Result := False;

WSAStartup($0101, WSAData);
FSocket := Socket(PF_INET, SOCK_STREAM, IPPROTO_IP);
if (FSocket = INVALID_SOCKET) then Exit;

SockAddrIn.sin_addr := LookupName(Host);
SockAddrIn.sin_family := PF_INET;
SockAddrIn.sin_port := htons(port);

Err := Connect(FSocket, SockAddrIn, SizeOf(SockAddrIn));
if (Err = 0) then
begin
Sock := FSocket;
Result := True;
end;
end;