EXCEL 【Excel(64bit) VBA】【Winsock API】【TCPクライアント&サーバー】Application.OnTimeによるマルチプロセス対応 Application.Ontimeを使ったマルチプロセスのアイデアがとても気に入ったので、TCPのクライアント、サーバーのサンプルも作成。 Excelのモジュールに下記コードを張り付けて、MainForMultiProcessを実行すると... 2021.03.01 EXCELExcel【VBA】VBA
Excel【VBA】 【Excel(64bit) VBA】【Winsock API】【UDPクライアント&サーバー】Application.OnTimeによるマルチプロセス対応 Application.OnTime を使ったマルチプロセスの記事をみて、ぜひWinsockに適用し一番やってみたかったチャレンジ とりあえず成功したので、コードのメモ 何が驚くかというと、 ・現在作業中のシートから、受信事象待ち専用のプロ... 2021.02.26 Excel【VBA】TechVBA
Excel【VBA】 【Excel(64bit) VBA】【Winsock API】IPアドレス変換(文字列⇔コード値)コードサンプル【inet_addr】【InetNtopW】利用 IPアドレス文字列(例:192.168.10.1)をコード値に変換したり、コード値からIPアドレス文字列に変換するサンプル 2021.02.24 Excel【VBA】TechVBA
Excel【VBA】 【Excel(64bit) VBA】【Winsock API】ポート番号(u-short型)をVBAで扱う方法とその検証 ポート番号、winsockではu-short(16bit 符号なし整数 0 - 65535)で扱うことになっているが、VBA上では、u-shortが存在しない。 同じサイズのintegerを使うコードをよく見かけるが、どうもその理屈がわから... 2021.02.23 Excel【VBA】TechVBA
EXCEL 【Excel(64bit) VBA】【Winsock API】【UDPクライアント&サーバー】サンプル 最新化 以前作成したUDPクライアント、サーバサンプルを最新化 以前のサンプルでもまだ動くが、ソース量が多く、先人のコピペによる力が大きかったので、全体を見直した。 今回の見直しを通して得た知識は特に以下3つ WSAGetLastErrorでは、エ... 2021.02.21 EXCELExcel【VBA】Tech
Excel【VBA】 【Excel(64bit) VBA】【Winsock API】recvfrmの第2引数(char* buf)にはVBAからByval string型で渡す必要がある件 3日くらいドはまりした。しかも、あまり納得できていないがそういうものだと思うしかない。そして、調べてみたら、この件について思うことや対応策を考えている人がわずかにいて、安心した。 まず前提(自分の思い込みかもしれないが) VB(VBA)を多... 2021.02.20 Excel【VBA】TechVBA
Excel【VBA】 【VBA】【Excel(64bit)】WinSock getaddrinfoでホスト名からIPアドレスを調べる ホスト名からIPアドレスを取得する処理サンプルを作ろうとgethostbynameと悪戦苦闘しているが、いまいちうまくできない。他に何か方法がないか調べていたら、たまたま stackoverflowのサイトを調べていたらgetaddrinf... 2021.02.13 Excel【VBA】TechVBA
Excel【VBA】 【VBA】【Excel(64bit)】WinSock gethostnameで自身のホスト名を取得する ホスト名(いわゆるコンピュータ名)を取得するサンプル gethostnameというAPIを使っている。このサンプルではホスト名が文字列で出力される。IPアドレスが取得できるgethostbynameとは違うので注意 2021.02.12 Excel【VBA】TechVBA
Excel【VBA】 【VBA】【Excel(64bit)】WinSockのエラーコードの取得方法まとめ(WSAStartup時は戻り値、WSAStartup成功後はErr.LastDllErrorを使うこと、 VBAではWSAGetLastErrorは使えないぞ!) C言語系のサンプルコードでは、Winsock関連のエラーコード(詳細)を取得する場合、Microsoftのドキュメント通り、WSAGetLastError()を使うコードが散開している。(一例) これを真似て、VB(VBA)からwinsoc... 2021.02.11 Excel【VBA】VBA
Excel【VBA】 【VBA】【Excel(64bit)】WinSockの起動(WSAStartup) と終了(WSACleanup)サンプル 過去のブログで公開してたWinsockを使ったソケット通信プログラムの切り出し。 まずは復讐で、Winsockの起動と終了まで もう十分枯れた技術で、今更Excel VBA でとも思ったが、最近見かけたApplication.timerを利... 2021.02.08 Excel【VBA】VBA