前回がファイル・フォルダの同期だったので今回はデータベースの同期にチャレンジ。やろうと思うと結構難しいところがでてくる(異種DBとか)ので、今回はダンプファイルからリストアよろしく、親DBの内容を子DBに単純コピーする程度でやってみた。長めになるけどこんなソース。UsingMessageBox.Show("DBの同期が終了しました。Subとりあえずこのくらいのロジックで、DB間にてレコードの同期を取ることができた。気を付けるのは、レコード間の同期を取るために専用のテーブルやトリガ、ストアドプロシージャが必要になるんだけど、それはSqlSyncScopeProvisioning.Applyメソッド呼び出し時に作成してくれる。この時このサンプルのようにスキーマを設定していないと、同一スキーマに作成される=同一権限の人にはテーブルやらがたくさん増えて見える、ことになるのが注意。スキーマを予め用意しておけば、切り離して見ることができるのでそれがベター、というかベストだろうねぇ。Frameworkによる同期について調査。やってみたのは「ファイルの同期」。SyncToyとか使ってやればいいんだけど勉強と調査をかねてやってみた。結論から言うと「物凄く簡単にファイル同期ができる」というところに。今回のファイル同期であれば、Microsoft.Synchronization(Microsoft.Synchronization.dll)Microsoft.Synchronization.Files(Microsoft.Synchronization.Files.dll)これらはSyncFramework2.0をインストールすると、ProgramFiles関係のフォルダにインストールされているのでそこから直接参照しないといけないのよ。GACに入っていると思っていたから少し探してしまった。Using以上がファイル同期に書いてみたソースの全部。これだけで楽々できてしまうので、業務システムとかでよくある最新モジュールの適用などは大分楽にできるようになるねぇ。セキュリティ関係とか処理タイミングとか考えないといけないことが多々あるので、そこらへんは一工夫。R2でVB6アプリ64ビット版のみとなった2008R2で、VB6アプリがどうなるかを自分の案件に限って動作確認してみた。何かあっても責任は一切ないwVB6製アプリ基本そのまま動く。パスのハードコーディングとか「今更か!」というヤカラはなしにして。予想していたよりもWow64はすごい。サードパーティコントロール自分の案件では某社のDenpyoManとActiveReport。これも特に問題なく動作してしまったw未だに動作する環境でリリースするMicrosoftはとてもすごいよねぇ。自分がオーナーとかPMだったら、とっくに動作対象外にしてばっさりと切り捨てているだろうし。インストールの際に利用しているコントロールによっては管理者権限が必須。Tabとかフレックスグリッドとか。それ以外なら恐らく標準ユーザーでもいけるんじゃなかろうか。参加してきました今日はマイクロソフトのTechFieldersセミナーに参加してきました。今回のテーマは「仮想化」。Hyper-Vな話題。自分は実際に業務としてHyper-Vやリモートデスクトップサービスを利用してはいないんだよね。リモートデスクトップをメンテナンス用に使っているぐらいで。後は記事とかそこらへんにある知識だけだったので、今回のセミナーは実物を見ながらというのがとても面白かったなぁ。エバンジェリストの高添さんのメインセッションはかなりわかりやすかった。LTではトータル4名の方々が行ってくれたが、どれもまぁ目を引くというか何というかwよく5分という枠に興味を引く内容をつめこめるもんだと感心ですわ。個人的には一番最後のMSエバンジェリストな松崎さんのLTが時間内に終わらないというオチもつけてくれてウケました。今回のセミナーは久々に欲を刺激されたいいセミナーだったなぁ。この投稿へのリンク2009年11月10日火曜日WindowsFormsとWPF最近は仕事の合間にWPFを研究するようにメンバーに指示を出しているので、自分も負けじと勉強中。グリッド?何それ、WPFならラクショーじゃんwいやぁ・・・軽く触っただけで多段レイアウトの一覧表示がさくっと作れるというのは業務系システムにこそ、メリット大きいよなぁ。WindowsFormsを利用し続ける事に意義が見出せなくなるぐらい・・・。WPFやっていない人にとっては時間もかかって大変だろうけど、かけた時間以上の効果が間違いなくWPFにはあるねぇ。今からでも遅くないからやるべきだわ。問題なのはウチの社内みたいに、データバインディングも使っていない、場合なんだよねぇwさてさてどうしましょ。この投稿へのリンク2009年10月30日金曜日SqlCEConnectionBuilder?実際には含まれていないwということで自作してみる。ConnectionBuilderはSystem.Data.Common.DbConnectionStringBuilderを継承して作ればいいので、基本的な部分はほとんど実装することないんだよね。他のConnectionBuilderの実装を見たわけではないんだけど、恐らくはここらへんをクリアしてれば十分かと。接続文字列には初期値以外の設定を出力する初期値についてはMSDNとかTechNetを見てもらえば記載されているのでそれを転記。なんだけどそのメソッド自体は特にどうこうしなくてもいいのよね。設定の保持方法を他と合わせてあげればOK。実際にはDbConnectionStringBuilderにて用意されているHashTableに値を追加したり削除したりするよう、プロパティの実装をやってあげればOK。札幌イノベーションデイ2009行ってきました!今回の目的は大きく分けて二つ。一つはエバンジェリストのセッション。一つは・・・アレを見てくることwところがアレについてはBlogでの公開にNGがかけられたので書けませんwエバンジェリストさん達のセッションはやはり面白い。アジャイルのセッションをやっていた長沢さんのヤツは2部構成だったんだけど、2部目は別セッションのため参加できず。資料だけもらってきましたわ。マイクロソフトパートナーカンファレンス2009久々にイベントのため外出!マイクロソフト系のイベントはできるだけ出席するようにしていたんだけど、今年や去年は殆ど参加してなかったんだよねぇ。久々だったのでいい刺激になりました。昔、営業窓口だった方がいつのまにやら支店長に。相手方はこっちの事忘れているだろうけどねぇwその方が、「あるイベントで隠し玉を用意しています」なんていうから、もうw思わずそっちも参加登録しましたw隠し玉については恐らく公表してはいけないっぽいので、イベント後までは内緒みたい・・・。ま、もともとそのイベントはエバンジェリストの方も多数来るので、マジメに聞きに行きたかったヤツなので・・・。ふんぎりをつけるいいきっかけだったな。忘れないようにのメモとして。いう場合は情報スキーマ[INFORMATION_SCHEMA]を利用して取得する。このあたりは2005以降のSqlServerと一緒。‘テーブル名’とりあえずはこのぐらい。この投稿へのリンク2009年10月2日金曜日DataGridViewでアンバウンド時にソート過去にもちろちろ書いておいたんだけど、修正が発覚したのでwDataGridViewでアンバウンド時にソートしようと思うと、標準機能だけでなくSortメソッドを利用したソートを行う事が必要になるんだよね。その際には実際に判断を下すためのIComparerインターフェースを継承したクラスを用意すると手軽にいけるのよ。その際、Compareメソッドをオーバーライドして2値の比較結果を算出するようにするんだけど、その際にちょっと考慮する必要がある事が。AセルとBセルの値においては「値が無い」状態が数種類存在するここなんだよねぇ。具体的にはNothingとDBNullなんだけど、Nothingは「比較対象がない」場合と「比較対象のセルに値がない」場合、でDBNullは「比較対象のセルの値がDBNull」という場合。実際にはこういったロジックになるんじゃなかろうか。人がITエンジニアの転職市場の話を書いているんだけど・・・。んー、正直微妙というか何というか。小飼さんの言わんとするところも分かるんだけどねぇ。なんかそのやり方は、都心部というか人が多く集まっている場所とか、大きい企業とかそういうところにしか通じないんじゃないかなぁ、と思うんだよな。少なくとも中小~零細企業においてITエンジニアがブログ書いていようが、Twitterしてようがまず間違いなく見る事はないだろうし。3カ月程度Blogを書き続けた程度で人の目につくかどうかなんて、よほどの中身が書ける人に限定されるわなぁ。逆に、そういった人の目につくことができるネタでBlogできるくらいだったら小飼さんの言う通り、職にあぶれることもないだろうね。この投稿へのリンク2009年9月19日土曜日フルテキスト検索設定用のストアドプロシージャ前回同様面倒くさくなったのでストアド化させたwカタログの削除・生成とインデックスの削除・生成用のサンプルとして。'フルテキストカタログ、インデックスの生成を行いました。ログのダンプを行った後に有効となります。毎回テンプレートから起こしているのが面倒になったので、一括生成用プロシージャを作ってみた。この投稿へのリンク2009年9月14日月曜日WindowsXPの修復インストール自宅PCのUSB環境が理由不明でおかしくなったので、修復インストールを行う事に。ウチはXPといってもMCE2005で媒体が2枚なんだけど、とりあえずはそれほど問題なくできるかな・・・と思いきや。修復インストール中に色々他の媒体を要求されるんだねぇ。XPのSP2とかを要求されたけどそんな媒体はねぇw.Net周りでレジストリ登録失敗とか出るけどどうしようもねぇww結局クリーンインストールすることに・・・まぁその分環境綺麗になったけど、これから使っていたソフトの再インストールだ。この投稿へのリンク2009年9月9日水曜日OpenXML形式の調査もう時間が全然ないので調査が一向に進まないけど、忘れないためにもメモ。2/2)今利用しているライブラリも全然修正が進んでいないから、シートの追加削除がバグってるしなぁ。はやいところ時間作って対応せな。ガイドラインWindows7対応版ということで提供されていた。ガイドラインで、ローカルで読みたかったのでPDF版をDLしてみたんだけど、どうやらた一部ハイパーリンクが間違っている模様。この投稿へのリンク2009年8月26日水曜日DenpyoManとDataGridView社内で講習会なぞをやっているので、VB6・VB.Net共に調べたり話したりすることがそれなりにあるんだけど、グリッド系コントロールはどれもこれも基本思想としては一緒な気がしているんだよね。異なるのはUIデザイン部分が殆どで、大枠としての制御(値の使い方等)はそんなに違いがないように思えるなぁ。DataRepeaterだって、細かい部分は異なっても大枠の制御は似たようなもんだし。この部分で違う設計が思いつけば意外とイケるコンポーネントにできるかも。この投稿へのリンク2009年8月21日金曜日ブログクラブに登録しましたどういう使い方ができるかどうかは、まだ見えていませんがブログクラブに登録してみました。ここと、@ITのコラム、そしてTwitterアカウントが登録してあります。複数箇所に分散していたヤツを移行終わりました。HPでやっていた内容が一番何というか・・・変に重いなwまー、記録として残しはじめたのが2000年からだし(実際は1998年からなんだけど・・・まぁ扱っていたネタが今と全く違うんで)それなりに懐かしい話題が多かったなぁ。書いていた内容がマズイので移行できないのもあるのが残念だけど。この投稿へのリンク2009年8月12日水曜日DataGridView.CheckBoxCellのApprearanceDataGridViewのCheckBoxセルにはApprearanceプロパティがないのね・・・。使ってみようと思ったんだけどなぁ。過去にMCAを受験した人限定で、MCA受験料20%OFFになるとのこと。Masterだからなぁ。この投稿へのリンク2009年7月22日水曜日IE互換ブラウザとSilverlight最近までは問題なく使えていたと思っていたんだけど・・・。気がつくとSleipnir2+IE8環境でSilverlightモノが「対象外です」と言われて見えない・・・orzIE8単独では動作したので、プラグイン側でなんか判断しているんだろうなぁ。記憶が間違っていなければ、昨日だか今日にSilverlight3とかで更新パッチが流れていたから、多分このあたりなんじゃないかな、なんて。Yahooの立ち読みもそうなんだけど、世の中互換ブラウザに厳しいわ・・・。Connectから申し込んでおいたんだけど、無事認証されたようだったので現在色々ダウンロード中。今回は検証環境としてはWindows7WindowsXPを考えているんだけど、XP環境を用意するの面倒だなぁ・・・。ま、できるだけ時間を作って検証していかないとな。・・・ああ、これはきっとアレだ。烈海王みたいに「私は一向にかまわんッ!!」と言い切れる強さを持つ猛者だけを対象にしているキャンペーンなんだ、きっと。Mode検証用PCを一台確保してもらった。Mode?盲点というか考えてもいなかった事だったなぁ。Modeの特徴であるシームレスな仮想アプリケーションの利用が行えるそうで。Mode自体別にWindows7でなければいけない、という機能はないっぽいから十分Vistaでも動作しそうだったんだよね。これで企業のVista導入も増えればいいとは思うけど・・・。ネックなのはUltimateかEnterpriseというエディションの条件か。実際としてはBusinessを導入している(する)企業が割合多いと思うんだけどなぁ。この投稿へのリンク2009年6月15日月曜日ハードウェア構成見積の不思議ある案件でクライアントの入れ替えを提案するもので、web上での構成見積もりを行っていると。LiveMSDNやTechNetのBlog一覧とか、エバンジェリストな人もお勧めする、仕事のやり方について「実践的」「実際の話」「面白い(w)」書いてくれているBlog。これをみるとOneNoteを導入したくなること間違いないwイヤ、マジでほしくなる・・・。なんというか仕事の管理と進め方について、具体的な方法を示してくれているのがなんともスゴイ。仕事上そういったタスク管理とかのシステムを作ることもあるし、現実に自分の仕事の管理などで問題や不満を感じる事も多いからなおさらためになったなぁ。北海道にもセミナーに来てくれれば絶対参加するんだけど・・・。FoundationServerバンドルモデルが出てきているんだろーか・・・。3GHzだけどメモリ512Mという環境にSqlServer2005をセットアップすることに。後で調べてみたんだけど、メモリ512Mというのは必須環境というか最低ラインだったみたいで。インストールを行っていると途中でフリーズする事例が発生wしかもSqlServerエンジンとかでなくBooksOnlineでwwwBooksOnlineのセットアップをしないようにすれば、何とか流れたよ・・・。本体のセットアップより重いってのはどういうことなんだか。Expressどうにもパッチの適用方法が複雑で困ったのがこのあたり。SearchServer系もSharePointService利用しているので「ある程度」は一緒にあたるかと思っていたんだけどなぁ。2008)を見ながらやってみたんだけど、やはりというか玉砕。復旧を試みているうちにさらにカオスな状況になったので、全てアンインストールwその後最初からSP2版をインストールして再構築。・・・いやぁ、SearchServerExpressのSP2についてもう少し詳しい資料が見つかっていれば問題はなかったんだろうけど。SharePoint系だけどOfficeServer系のパッチだしなぁ、コレ。RC版でVB6製アプリケーションの動作ViryualPC上で今回も環境を用意してみたので一通り動作確認。相変わらずTabCtl32.ocxとMsflxgrd.ocxがレジストリ登録周りで失敗しているくせに、何事もないかのように進んでしまい少々ハマっただけでとりあえずは問題なさそう。一応自分で手掛けているシステムだけ確認したけれど、その際に利用していたサードパーティ製ツールはこれ。1.5一応この二つは問題なく動いている様子。これで一安心かな・・・。GrapeCity製品で問題あるのは、自分が関わっている中ではInputMan6.5だけかな。自分のプロジェクトでは利用していないけど、どうやらこれのIME制御関係とメニュー関係のocxで問題が出る様子。InputManとDenpyoManってIME制御同じことやっていると思っていたんだけどなぁ。今のところ自分のプロジェクトのDenpyoMan利用箇所では問題ないんだよね。Modeでなくても大丈夫とわかって一安心だw使ってはみたいんだけどねぇ。Mode(2)色々調べていく内に、他のサイトで言及していたHW要件の話が目につくようになってきた。AMDはいいんだけどIntel系が・・・。Intel-VTという仮想化技術を搭載したCPUとなると、Xeon5000番台、同じく7000番台はまだいいとして、クライアント側が厳しい。Core2DuoではE6000、E8000。Core2QuadではQ6000、Q9000。現在ビジネスPCでまだ出回っているCore2DuoのE7000台は未対応というのが厄介。ま、CeleronやPentiumのデュアル物はしょうがないとしても。Windows7導入時のHWにはちょっと気をつけないとくらってしまいそうだなぁ・・・。素直にWindows7用システムに刷新できれば何の問題もないんだけど、そんなことができるケースなんて仕事上少ないわな。Modeあー、なんというかやっぱりこういう形になってきたか、というのが正直なところ。結局一部のWindowsXPから乗り換えられないユーザー、ベンダーの為に仮想化されたXPを標準提供しようということなんだよね。見た目はAPP-Vというか、VirtualPCのように「いかにも仮想化です」という雰囲気がないのでいい感じはするw実際にベータがリリースされたら確認はするけど、APPからストレージ(ローカル環境)にアクセスする際に、何か気をつけないといけない点があるような気がするなぁ。Foundation昨日(4/22)あたりに発表になっていた、低価格なWindowsServer。提供形式がOEMのみなのでメーカー製PCに限定されるとはいえ、しょっぱなに発表されたDELLのモデルが最小構成で\54,800円だかそのあたりという、本当にクライアントPCと変わらない価格帯なので、今後続く日本のメーカーからも近いレベルでの提供になるんじゃないかと・・・。詳しくはよく調べられていないので何とも言えないんだけど、15人以下という制限は確かに小規模な会社には丁度いい感じ。気になった点が「既存ActiveDirectoryへ組み込むのは推奨されない」というところかな。ライセンス形態が別物だから面倒になるってことなんだろうけど・・・。使えるようだったら仕事で使いたいねぇ。今の仕事のメインターゲット層に思い切りマッチしているから。今月の頭(4/1)から無償化されていたとは知らなかった・・・。SharePointServiceは少しずつ触っていたので「欲しいなぁ」とずっと思っていただけに結構嬉しいね。ワークフローあたりを試し試し触って使い込んでみるかな。それによっては自前で作る必要が大分減るからなぁ。orb!)CodeProjectで以前よりあったんだけど、全然知らなかった。WPFでも同じようにリボンインターフェースを~、というのは知っていたんだけど、WinFormsでというのは初めて見つけたんだよね。Demoも含めてソース一式ダウンロードしてみて見てみると・・・。いやぁ、これはスゴイ。本当に2007OfficeSystemだ。実際に利用するにはOfficeUIのライセンス登録が必要なんだけど、アレって確か登録する際に「利用する商品名」のような欄があった気が・・・。前に登録しようとした時は、そういう項目があったんでパスしたんだけどなぁ。日本版として契約内容変えてくれないものかなぁ。この投稿へのリンク2009年3月17日火曜日DataRepeater.ItemTemplate内部でのTabIndexアンバウンドで使いたいがためにカスタマイズ中w色々手を入れていると少々気になる挙動が。デザイン時にコントロールをドロップして、ItemTemplateに追加するんだけどこの時各コントロールのTabIndexは重複できるんだねぇ。今までは重複不可と思っていたんであまり意識しないで順番につけていたんだけど。EnterキーをTabに変換するようDataRepeater.ProcessDialogKeyメソッドをオーバーライドしてみたんだけど、デザイン時にTabIndex=0としておいたコントロールが、何故だか一番最後にフォーカスを得るようになってしまうんだよね。ItemTemplate内部ではちゃんと0オリジンで設定されているんだけど、実際に表示されているカレントアイテム内部ではTabIndex=0のコントロールのTabIndexが末尾のインデックスに置き換わっていたんだよねぇ。最初は自分が追加したロジックを疑っていたんだけど、TabIndexなんて調整しないからなー、と試しに試してようやく現象発覚。デザイン全部直してもらうなんてのも大変なので、とりあえずどこかのタイミングでTabIndex再調整ロジックが動くようにしておけばなんとかなるかな・・・?多分行ヘッダが追加された時に再割り当てされているんだとは思うんだけど・・・。終了2009-3-31にてついにVisualStudio2005ExpressEditionの提供が終了ということで。考えてみたら自分が触り始めたのはベータ2のころからだから、かれこれ5年になるんだなぁ。isoイメージだけは何かと使うかも知れないのでダウンロードしておかないと・・・。空パスワードアカウントの有効・無効まぁ深くセキュリティを考えなくていいシステムの場合にはよくあるのがパスワードなしアカウント。今回そういったシステムのハードウェア移行を行った際に少しあたふたしたので・・・。ログインアカウントをManagementStudioでスクリプト化して、新サーバの方で実行するとアカウントは無効状態で登録されるんだよね。ManagementStudioの詳細画面でアイコンの右下に赤矢印がついているような感じで、無効を表しているんだよね。「空パスワードなアカウントを有効にすることはできません」(メッセージうろおぼえw)と言ってきたんだよ。一度適当なパスワードを設定し状態を有効に再設定、その後パスワードを空白にすると今度は処理が通ってしまったわけだ。CHECKIDENT今まで開発にはSqlServer2005のSP2を利用していて、IDENTITYが設定されたテーブルのDELETEトリガにSEEDの再設定を行うものを仕込んでいたんだよね。@MAXIDENT);今まではこれで問題なくSEEDの再設定が行えていたんだけど、今回SP3を適用して確認しているときに問題が発生。DBCCの部分でパラメータ不正的なエラーになっていたんだよね。詳しく見ていくと次のようなケースで発生していたみたいで。CHECKIDENTがエラーとなるように動きが変わったんだよなぁ。言ってSP3で何が変更されたとか、もともとこの方法がまずいだとかまで調べないでやっていたものだから何とも断定できないけれども。SP2環境では問題なく動いていたのは事実。今回は次のように対応することでSEEDの再設定が行えました。@MAXIDENT);DBCCする前に、取得したIDENTITY値がNullかどうか判断してNullならば「0」をSEEDに設定すればOK。ManagementStudioExpress使い始めて大きいところでは全然問題ないんだけど、細かいところでストレスが。クエリを実行するとその後必ずIMEがONに戻るんだよなぁ・・・。どこか設定ないものかと見てみたけど、それらしい設定は見えないし。んーむ、これはなんとかならんもんかなぁ。Expressダウンロード情報として公開されていたので自前の環境にいれてみた。インストールのダイアログがなんというかSqlServer2008系で統一した感じに。面倒が多くて使いづらいwこっちはManagementStudioExpressをインストールしたいってのに、GUIの雰囲気としてはSqlServer2008のインストールにしか見えないんだよねぇ。それとインストールするにはSqlServer2005のManagementStudioExpressはアンインストールしないとできなかったんだよな。ここもちょっと面倒だった・・・。そのくせインストールが終わって初起動させると、「ManagementStudio2005から設定をインポートすることができます」と聞いてくる。アンインストールしたというのに設定だけは残っているのかね?まぁそれ以外については2005までとほぼ同様なので特に問題はないね。Express版は今まで利用できなかった標準レポート(使用容量とかそういうヤツ。Stander以降は提供されていた)が今回から利用できるってのは嬉しいポイントだわ。Frameworkプロセス管理というか開発標準というかそういうジャンルな話を調べていると出会ったのがこれ。インストールを行ってみて色々触ってはいるのだけれど、元々の知識不足がたたってかものすごく難しくものすごくわからないwEclipse周りも全然詳しくないので最新版の1.5.x系統の日本語化ができなかったので、仕方なく1.2.x系統をセットアップしていたり・・・wこれでうまいこと開発標準とかを定義できれば後々楽に質を向上させた仕事ができるとは分かっているんだけどねぇ。勉強しようとは思っても時間が足りません(というかせっぱつまった仕事の合間にこういうことをやっているから時間がないんだけどw)いや、せっぱつまった時って無性に色々な事に手を出したくなるんだよなぁ。よくないことだけどね。やっていってみるか・・・。その2調査の為に、素のDataRepeaterを使って明細にDataGridViewを追加してみた。ここから考えるとDataRepeaterというよりもデータバインディングの仕様の感じがするなぁ。今までもっていたイメージは「選択されているレコードに対する子レコード群をリレーションを通じて取得、表示」だと思っていたんだけど、それだとこの状態にはならないよね。各行のレコードに対する子レコード群を・・・という仕様だったら恐らく望んでいる状態になると思うんだよね。なくてあくまでもカレント行に対する子レコード群、だから各行に張り付けたDataGridViewでは同じレコードが表示されているんだろうと思った(ついでに同じ動作をするのも恐らくはデータバインディングのせい)。これはどうしようかなぁ・・・。感覚としてはバインディングしている値に細工するか、DataGridView側でフィルタ的な動作を持たせてリレーションを使わないバインディングをすれば見た目は同じ感じになりそうなんだよなぁ。この投稿へのリンク2009年2月5日木曜日Windows7にVB6アプリまぁ職業柄仕方がない(w)のでWindows7ベータ環境にVB6製システムをインストールしてみて動作確認なぞしてみた。今回のシステムはGrapeCity社のDenpyoMan1.5とActiveReport1.5を利用しているのでここらへんの確認もこめてやってみたんだよね。結果としてはまぁVistaと同様。いうよりも、このシステムを作っている時、ある程度考えて作っていたおかげかVistaでの文字入力のトラブルとかファンクションキー利かないよ!ウワァァン!なんてトラブルも全部回避していたので、一応安心wいやね、社内の他の人達が作ったシステムだと上のトラブルが出ているみたいだからwま、作り方の差が出ているわけですが。インストールにちょっと問題があったんだよね。Installerで作成していたんであまり心配していなかったんだけど、MsFlexGrid.ocxとTabPage.ocx(名前が怪しいけど、グリッドとタブコントロールの事です)のインストールだけが正常に行われていなく、レジストリ未登録みたいな状態のまま「インストールは正常に終了」となっていたんだよね。うーん、これはWindows7環境がベータだからなのか、それともocxコントロール側の話なのか。時間をとって手作業で設定してみたり色々確認はする予定。VB6アプリでも「ちゃんと作っていれば」特にトラブルなく動作してくれそうです。この投稿へのリンク2009年2月3日火曜日DataRepeaterにDataGridViewいや・・・なんというかそんな事するな、という感じがしないでもないんだけど、DataRepeaterコントロールのテンプレートにDataGridViewを追加してみてうまいこと使えるかどうかやってみようと色々試してみたんだよね。データバインディングの設定なのかわからないんだけど、今のところはDataSetに設定したリレーション通りにはDataGridViewへ表示されないんだよなぁ。表示されるのはDataRepeater1件目のデータに関連する子データのみ。DataRepeater内部のDataGridViewをクリックすると、すべてのDataRepeater明細行に存在するDataGridViewが同じ挙動を示すのでものすごく怪しい見た目にwちなみに今回も普通にバインディングしているわけではなく、実装者にはアンバインドで使っている気持にするような拡張を施しているのでそこが原因という気がしないでもない。いうか、ほぼそのあたりに原因があるんだろうけどねぇ。