ブログ

割とコンピュータよりの情報をお届けします。

Windowsで共有メモリの使用WindowsサービスとWindowsアプリケーション間のやり取り

WindowsでWindowsサービスとアプリケーションの間の共有メモリによるデータのやり取りを確認していた。

詳細ページへ

2018/08/16 コンピュータ   TakeMe

open62541のビルドをVisual Studio Express 2017 for Windows Desktopで行うx64版

先にopen62541をVisual Studio Express 2017 for Windows Desktopでビルドする記事を書いたが,x86用しか書いていなかったがx64用のビルドはどうするのか気になっていた。CMakeの-GオプションにWin64を追加するだけだった。

詳細ページへ

2018/08/12 コンピュータ   TakeMe

C#とCとのやり取りでCから配列変数を渡す例

C#からDllImportする場合について可変長の配列を渡しあうのがつかれた。
DLLから可変長文字列を渡す場合にはstringを渡せばよい。stringとchar*(ただし,最後に\0が付いている文字列に限る)の変換関係は支援がついている。
固定長の配列はDllImportの時の記述で引数型としてByte[]やInt32[]やDouble[] などを書いておけばよい(固定長といっても,呼び出し時に配列サイズが分かっていればよいだけで,配列自体は呼び出し前までにサイズが固定されればよい(決まればよい))。この方法は,.NET Compact Frameworkでも使用できる。ただし,長さが.NET側で分からなくて,呼び出された先のDLLの側で決まる場合には少しトリックが必要である。その場合,DLL側ではSAFEARRAYとして扱うとよさそう。

詳細ページへ

2018/08/11 コンピュータ   TakeMe

Microsoft Visual Studio Express 2017 for Windows Desktop でDLL作成して使用

いろいろやってみて
Microsoft Visual Studio Express 2017 for Windows Desktop でDLL作成したらそれを使う際に注意があった。

詳細ページへ

2018/08/08 コンピュータ   TakeMe

open62541のビルドをVisual Studio Express 2017 for Windows Desktopで行う

OPC-UAの続き。python-opcuaは簡単なアプリでもPythonをインストールする必要があることに問題を感じてopen62541を使ってみようかと思った。

詳細ページへ

2018/08/07 コンピュータ   TakeMe

Microsoft Visual Studio Express 2017 for Windows Desktop でDLL作成

Visual Studio Professionalならテンプレートがついていてすぐできるのだが,Expressではdll作成のテンプレートがないので自分で設定しないといけない。

(なお,いったんプロジェクトを作ってしまうとExpressでも使える。)

詳細ページへ

2018/08/06 コンピュータ   TakeMe

python-opcuaのnodeidのつけ方に苦労した

最近 自分で作ったアプリとほかのソフトのつなぎでOPC UAに対応を迫られる場面があって,node opcuaを使用したが,通信が問題なく続いている間は問題がないが,いったん不具合があったときに再接続に失敗する不具合が解消せずpython-opcuaに乗り換えることになった。ところが,サンプルを見ても"ns=2;i=3"などのnodeid?のつけ方がわからずに苦労した。

詳細ページへ

2018/08/05 コンピュータ   TakeMe

CSSのtransitionが効かない項目もある

CSSのtransitionなるものを調べていたら一部の項目は効かないことが分かった。

詳細ページへ

2018/08/04 コンピュータ   TakeMe

plotly.jsを使ってみた

plotly.jsはオープンソースになっていると聞いて使ってみた。

詳細ページへ

2018/08/03 コンピュータ   TakeMe

Node.jsでtcpサーバとクライアント作成の試行

前の記事でSocket.ioばかり使用していたが,とりあえずsocketでもよいのではないかと思って調べていたら,参考になりそうな記事があった。

詳細ページへ

2018/07/29 コンピュータ   TakeMe