[PR] Excelで多桁計算するなら「Addin for Excel 95-2007 Basic Edition」!
[PR] 自由な名前で定数を共有?!「Addin for Excel 95-2007 Professional Edition」
[AA] 安かったから、買ったよ→BUFFALO ポータブルブルーレイドライブ BR-PX68U2-BK
[予告]次回メンテナンス(運用停止)は 12月7日 10:00~16:00 のうち2時間程度を予定しています。
前の10件 55  56  57  58  59  60  61  62  63  64  65

なんか、できそうだったので、やってみた。
元ソースは過去のC/C++コード

非同期パケットダンプがちょっと固まりやすいけれど、一応できた。
固まるってのは、Rawパケ採取にBackgroundWorker使ってんだけど、激しいProgressChangedによって、Form描画が詰まっちゃってるっぽい。←応急処置入れたので固まりにくくなったと思う。
あと、停止時に例外出るのは仕様。

一応、実行ファイルだけ置いておく。

OverSsl使った場合、ちゃんと暗号化されていることが、視覚的に分かるぞ。

さすがに、XP以降じゃないとダメかも。
要.NET Framework 3.5だし。
IPv6でも動くかも知れないけど、未確認。
#IPv6ヘッダ解析はIPアドレス部分だけ入れてあるつもりだけど。
(追記)実行には管理者権限が必要です。

とりあえず、フルマネージコードでRawパケ採取できることが分かったことは収穫。

いつからかは定かではないけれど、キータイプ属性値に変更があったようで。

CUS と Custom Key の両方に対応してはじくようにしたので、変更前でも変更後でもOK。

本当はもっと効率がいいXSLT記述があると思うけど、個人的には、元XMLに手を加えることなくテーブル表示できるだけでいいので、これで十分かつ超便利。

実験に利用しているX41は、8GBのCFを使ってる。

実験としては、8GBでも、まぁ実用上問題ないのだけど、ちょっと複雑なことをしようと考えると、ちょっと足りない。

HDD買えばいいんだけど、生産も終了しちゃって、高いんだよね。
SSDもまだ高いし、X41は相性が厳しいらしい。

で、CF探すと、32GBでこの値段(11k)。
お買い得感たっぷりで昔なら即買いだったけど、無職の今は我慢できるようになった。
でも、10k切ったら買っちゃうかもね。×400だし。

32GBあれば・・・WindowsHomeServerは無理だな・・・
#HomeServerは65GB以上のHDDを要求するので。

またまた困る

| コメント(0) | トラックバック(0)

そして、アドインを登録しようとして、重大なエラーとやらが出る。

Heap blockなんとか~ってエラーだとわかり、解放時のエラーらしいというのは分かったのだが、デバッグモードでトラップするのは、非常に困難。

  • Excelにあらかじめアドイン(ちゃんと登録できるやつ)を設定しておく
  • デバッグビルド物件に置換
  • VSデバッグモードでExcelを起動(アドインを引数にしない)
  • 操作等を実施
  • 例外ダイアログが出たら、デバッグでコードが出るところまで何度かボタンをクリック

これで、何とか原因を突き止めることができる。

今回の問題は、デバッグ実行時の引数にアドインを指定してると呼び出されない関数にあったので、はじめはわけが分からなかった。
#現在リリースされているものとは違うコードです。

こういう手法に気付くまでが大変だけど、コードや呼び出し履歴を掴めれば、どこの何が原因かを判別するのが容易になる。

ま、PRですし、既出ですが。

まずは、OverSsl Clientをインストールして、↓こんなふうに設定を追加しますよ。

予告の変更

| コメント(0) | トラックバック(0)

ま、気にする人はいないだろうけど、メモがてら。

  • 絶対値・・・実装。
  • 円周率・・・実装。
  • SQRTPI相当・・・実装延期。
  • 桁指定・・・実装延期。
  • SUM系・・・実装延期。
  • 数値化・・・追加実装。

ま、こんなところか。

円周率は出せているし、絶対値も現状用意済みの内部関数を呼ぶだけ。
あとは数値化だが、これも何とかなったっぽいので、これで、出せる・・・と思うのだが、デバッグモードで実行すると、例外がボロボロ出るところがあるので、原因を調べてからにしたい。

数値化はとても便利かも知れない。
#現状、Excelには255文字以上の数値文字列を数値化する関数が無い。

64bit版もできるんだけど、これは要望か何かがあるなら考えるけど、メジャーバージョンアップまで非公開の予定。

パイ出た!

| コメント(0) | トラックバック(0)

と、声に出して言いたい。

パイと言っても円周率(π)ですが。

いや~、スタティックライブラリのリソースからロードするのって、結構難しいですね。

あと、ちょっとリソースファイルの編集について、インクルードを処理するのは、リソースビューで開いて、「リソースファイルのインクルード」でやると簡単だったことをメモしておく。

で、πですが、こんな感じ。

しかし、もし、仕様ならば、仕方ないし、そうじゃなくても、現状そうならばそうで対処するしかない。
#回避策があるのならば、それに頼る。
##回避策が無いのに、不具合を仕様と言っちゃう(再起動したところで、再現を繰り返すだけ)のは愚かなだけだが。

とりあえず、関数の説明は同梱のPDFにお任せしちゃうことで、無しにすることは不可能ではないので、それで対応してみる。

さて、円周率3万桁、ちゃんと出るかはこれから確認。

まさかそんな仕様?

| コメント(0) | トラックバック(0)

例のXLLSDKをやっと取り込んだんだけど、やはり引数なしでうまくいかない。

サンプルだと引数なし関数の登録がうまくいくのかと思っていたのだけれど、試しに関数の説明まで出そうとしたところ、引数ありになってしまうことが分かった。

関数の説明を端折ると、引数なしとして登録できる。

これは誰のせいなのか、全く分からないのだけれど、Excelのせい?なのか・・・よくわからん。

とりあえず、Excel2003でも2010でも挙動が同じだったこと、VS2008でもVS2010でも結果は変わらなかったことをメモとして残しておく。

いやはや、さて、困ったぞ。
読んでもこのあたり書いてないんだよなぁ・・・

あと、文字列(関数の説明以降)の最後1文字が切れるのも俺のせいじゃないらしい。
そういえば、引数なし関数がうまく登録できないとき、関数の引数んとこに空白1文字入ってるっぽいんだよね。
余分な1文字と無くなる1文字で辻褄は合ってるのか・・・?

んー、英語版Excelで試してみるか・・・

早速試してみた。

ただし、バッチファイルではなく、ファイルコピーで。

ビルド前イベントに設定したコマンドは以下(全ての設定で共通)。

copy "$(ProjectDir)StdDef\$(ConfigurationName)_$(PlatformName).h" "$(ProjectDir)StdDef.h"

StdDefフォルダに「構成名_プラットホーム名.h」でStdDef.hの内容をそれぞれの設定用に記述しておくと、ビルド前にコピーしてくれて、それでOK。

あとは、リソースファイル(.rc2, resource.h)とかstdafx.hとかで#include "stddef.h"してあげればOK。

一つ注意があるとすれば、VC++はデバッグ構成時に_DEBUGを強制定義してくるらしいこと。

よって、デバッグ構成のときは、

#ifndef _DEBUG
#define _DEBUG
#endif

のように定義しておく。
これで、二重定義警告を抑制できる。
#そして、もし定義されていない場合でも、定義される安心。

前の10件 55  56  57  58  59  60  61  62  63  64  65

サイトカウンタ

Total: 211,632 Hits, (Recent24Hours: 0 Hits)
~ Since 2010/01 ~

埋め込みツイッター

取得失敗;;
Now: 2024/11/23 16:10:24 JST

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

最近のコメント

月別 アーカイブ

2024年5月

 日   月   火   水   木   金   土 
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

埋め込みQRコード