ブログ移行
http://www.higuchi.dev-asp.net/
に移行中です。
posted @ 13:17 | Comment (0)
うなまな BlogVB覚え書き |
![]() AILight Blog |
2008年9月23日 #
2008年9月1日 #
posted @ 18:15 | Comment (0)
2008年8月30日 #
2008年8月27日 #
ちょっと真面目に話しすぎたのが悔やまれます。
関係者・登壇者・参加された方々、ありがとうございました。
企画された原水さんのブログでも紹介されています。
posted @ 8:01 | Comment (0)
2008年7月22日 #
posted @ 11:08 | Comment (2)
2008年7月9日 #
http://oitec.vbstation.net/modules/eguide/event.php?eid=1
?
posted @ 8:20 | Comment (0)
2008年7月3日 #
posted @ 7:17 | Comment (3)
2008年6月26日 #
サイトの目的は、
1.意見交換
2.イベント告知・管理
3.コミュニケーションの場
がメインの目的です。
Okayama Developer Community(Communications、Circle)-->略してODC
Okayama Information Technology Community(Communications、Circle)-->略してOITC
Okayama Developer Exchange-->略してODE
などなど・・・
いい名前はないですかね~
posted @ 9:02 | Comment (2)
2008年6月23日 #
出力完了後に、cOutputFilenameプロパティの値を利用すれば問題ないですけど、次バージョンでは
このあたりが改善されていればいいかなぁ。
posted @ 15:40 | Comment (0)
2008年6月19日 #
セッション内容はどうにかなると思うし。
なお、勉強会開催に向けて、協力していただける方も募集中!
posted @ 22:47 | Comment (5)
2008年4月8日 #
関係各位の方々、今年もよろしくです。
posted @ 9:10 | Comment (2)
2008年3月25日 #
Visual Basic Power Packs 3.0
http://www.microsoft.com/downloads/details.aspx?FamilyId=371368A8-7FDC-441F-8E7D-FE78D96D4063&displaylang=en
細かく機能を確認していませんが、VB6時代のDataRepeaterと、ほぼ同じ
ことができそうです。本家サイトでTips公開しなければ・・・
posted @ 9:12 | Comment (0)
2008年3月23日 #
参加された方々と名刺交換などができなかったのが残念。
参加された方、よろしきれば、連絡を・・・
次回の勉強会のこともありますので・・・
よろしくです。
posted @ 11:32 | Comment (5)
2008年2月28日 #
このたび、岡山にてコミュニティ支援団体であるNPO法人アイネタ ジャパンと
マイクロソフトが共催で勉強会を開催します。
・日時 2008 年 3 月 22 日 (土) 13:00~18:30 (受付開始 12:30)
・会場 第一セントラルビル 3F 中ホール (岡山県岡山市) [詳細MAP]
岡山でのイベントは初めてなのですが、今後、定期的に行えるように
してく予定です。
詳細は、http://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&EventID=1032370662
posted @ 8:53 | Comment (0)
2007年5月20日 #
なんとか無事にこなせたという感じです。時間は、10分オーバー。。。
デモも削ってしまったので、blogなどで、別途公開していく予定です。
関係者の方々、ご苦労さまでした。
posted @ 10:53 | Comment (2)
2007年3月5日 #
ナレータを利用したいんでなくて、System.Speech名前空間を利用したプログラムで
遊びたかっただけなのだが、SpeakProgressイベントなどが日本語だとダメみたい。
SAPI5.3の情報も少ないし、Microsoft Anna以外の音声はいものか・・・("Takashi","Keiko"?)
posted @ 15:14 | Comment (3)
2007年3月1日 #
2007年2月13日 #
Imports System.Data.SqlClient Imports System.Reflection ''' <summary> ''' TableAdapterにトランザクション機能を実装するクラス ''' </summary> ''' <remarks> ''' 利用方法の例 ''' Dim tat As New TableAdapterTransactor ''' Dim taData1 As New Data1TableAdapter ''' Dim taData2 As New Data2TableAdapter ''' ''' tat.AddTableAdapter(taData1) ''' tat.AddTableAdapter(taData2) ''' tat.BeginTransaction() ''' Try ''' taData1.Insert...... ''' taData2.Insert...... ''' tat.Commit() ''' Catch ex As Exception ''' tat.Rollback() ''' End Try ''' </remarks> Public Class TableAdapterTransactor Private _conn As SqlConnection = Nothing Private _trans As SqlTransaction = Nothing Private _tableAdapters As New List(Of Object) #Region "Pプロシージャ - GetConnection [TableAdapterのConnectionを取得する]" ''' <summary> ''' TableAdapterのConnectionを取得する ''' </summary> ''' <param name="tableAdapter">TableAdapter</param> ''' <returns>取得したConnection</returns> ''' <remarks></remarks> Private Function GetConnection(ByVal tableAdapter As Object) As SqlConnection Dim type As Type = tableAdapter.GetType() Dim connectionProperty As PropertyInfo = _ type.GetProperty("Connection", BindingFlags.NonPublic Or BindingFlags.Instance) Dim connection As SqlConnection = _ CType(connectionProperty.GetValue(tableAdapter, Nothing), SqlConnection) Return connection End Function #End Region #Region "Pプロシージャ - SetConnection [TableAdapterのConnectionを設定する]" ''' <summary> ''' TableAdapterのConnectionを設定する ''' </summary> ''' <param name="tableAdapter">TableAdapter</param> ''' <param name="connection">Connection</param> ''' <remarks></remarks> Private Sub SetConnection(ByVal tableAdapter As Object, ByVal connection As SqlConnection) Dim type As Type = tableAdapter.GetType() Dim connectionProperty As PropertyInfo = _ type.GetProperty("Connection", BindingFlags.NonPublic Or BindingFlags.Instance) connectionProperty.SetValue(tableAdapter, connection, Nothing) End Sub #End Region #Region "Pプロシージャ - GetAdapter [TableAdapterのDataAdapterを取得する]" ''' <summary> ''' TableAdapterのDataAdapterを取得する ''' </summary> ''' <param name="tableAdapter">TableAdapter</param> ''' <returns>取得したDataAdapter</returns> ''' <remarks></remarks> Private Function GetAdapter(ByVal tableAdapter As Object) As SqlDataAdapter Dim type As Type = tableAdapter.GetType() Dim adapterProperty As PropertyInfo = _ type.GetProperty("_adapter", BindingFlags.NonPublic Or BindingFlags.Instance) Dim adapter As SqlDataAdapter = _ CType(adapterProperty.GetValue(tableAdapter, Nothing), SqlDataAdapter) Return adapter End Function #End Region #Region "Pプロシージャ - SetAdapter [TableAdapterのDataAdapterを設定する]" ''' <summary> ''' TableAdapterのDataAdapterを設定する ''' </summary> ''' <param name="tableAdapter">TableAdapter</param> ''' <param name="adapter">DataAdapter</param> ''' <remarks></remarks> Private Sub SetAdapter(ByVal tableAdapter As Object, ByVal adapter As SqlDataAdapter) Dim type As Type = tableAdapter.GetType() Dim adapterProperty As PropertyInfo = _ type.GetProperty("_adapter", BindingFlags.NonPublic Or BindingFlags.Instance) adapterProperty.SetValue(tableAdapter, adapter, Nothing) End Sub #End Region #Region "Pプロシージャ - InitAdapter [TableAdapterのInitAdapterメソッドを呼び出す]" ''' <summary> ''' TableAdapterのInitAdapterメソッドを呼び出す ''' </summary> ''' <param name="tableAdapter">TableAdapter</param> ''' <remarks>利用しない</remarks> Private Sub InitAdapter(ByVal tableAdapter As Object) Dim type As Type = tableAdapter.GetType() Dim mi As MethodInfo = _ type.GetMethod("InitAdapter", BindingFlags.NonPublic Or BindingFlags.Instance) mi.Invoke(tableAdapter, Nothing) End Sub #End Region #Region "Pプロシージャ - InitCommandCollection [TableAdapterのInitCommandCollectionメソッドを呼び出す]" ''' <summary> ''' TableAdapterのInitCommandCollectionメソッドを呼び出す ''' </summary> ''' <param name="tableAdapter">TableAdapter</param> ''' <remarks>利用しない</remarks> Private Sub InitCommandCollection(ByVal tableAdapter As Object) Dim type As Type = tableAdapter.GetType() Dim mi As MethodInfo = _ type.GetMethod("InitCommandCollection", BindingFlags.NonPublic Or BindingFlags.Instance) mi.Invoke(tableAdapter, Nothing) End Sub #End Region #Region "Pプロシージャ - SetTransactionCommands [TableAdapterのCommandCollectionのTransactionを設定する]" ''' <summary> ''' TableAdapterのCommandCollectionのTransactionを設定する ''' </summary> ''' <param name="tableAdapter">TableAdapter</param> ''' <param name="transaction">Transaction</param> ''' <remarks></remarks> Private Sub SetTransactionCommands(ByVal tableAdapter As Object, ByVal transaction As SqlTransaction) Dim type As Type = tableAdapter.GetType() Dim commandsProperty As PropertyInfo = _ type.GetProperty("CommandCollection", BindingFlags.NonPublic Or BindingFlags.Instance) Dim commands As SqlCommand() = _ CType(commandsProperty.GetValue(tableAdapter, Nothing), SqlCommand()) For Each command As SqlCommand In commands command.Transaction = transaction Next Me.SetConnection(tableAdapter, transaction.Connection) End Sub #End Region #Region "Pプロシージャ - SetTransactionAdapter [TableAdapterのDataAdapterのTransactionを設定する]" ''' <summary> ''' TableAdapterのDataAdapterのTransactionを設定する ''' </summary> ''' <param name="tableAdapter">TableAdapter</param> ''' <param name="transaction">Transaction</param> ''' <remarks></remarks> Private Sub SetTransactionAdapter(ByVal tableAdapter As Object, ByVal transaction As SqlTransaction) Dim adp As SqlDataAdapter = Me.GetAdapter(tableAdapter) If adp.InsertCommand IsNot Nothing Then adp.InsertCommand.Transaction = transaction End If If adp.DeleteCommand IsNot Nothing Then adp.DeleteCommand.Transaction = transaction End If If adp.UpdateCommand IsNot Nothing Then adp.UpdateCommand.Transaction = transaction End If Me.SetAdapter(tableAdapter, adp) 'Me.InitCommandCollection(tableAdapter) End Sub #End Region #Region "メソッド - AddTableAdapter [TableAdapterを追加する]" ''' <summary> ''' TableAdapterを追加する ''' </summary> ''' <param name="tableAdapter">TableAdapter</param> ''' <remarks></remarks> Public Sub AddTableAdapter(ByVal tableAdapter As Object) Me._tableAdapters.Add(tableAdapter) End Sub #End Region #Region "メソッド - BeginTransaction [トランザクションを開始する]" ''' <summary> ''' トランザクションを開始する ''' </summary> ''' <remarks>開始する前に、AddTableAdapterメソッドで対象となるTableAdapterを追加すること</remarks> Public Sub BeginTransaction() Dim counter As Integer = 0 For Each adapter As Object In Me._tableAdapters counter += 1 If counter = 1 Then Me._conn = Me.GetConnection(adapter) If Me._conn.State <> ConnectionState.Open Then Me._conn.Open() End If Me._trans = Me._conn.BeginTransaction() End If Me.SetConnection(adapter, Me._conn) Me.SetTransactionAdapter(adapter, Me._trans) Me.SetTransactionCommands(adapter, Me._trans) Next End Sub ''' <summary> ''' トランザクションを開始する ''' </summary> ''' <param name="conn">コネクション</param> ''' <remarks></remarks> Public Sub BeginTransaction(ByVal conn As SqlConnection) Me._conn = conn If Me._conn.State <> ConnectionState.Open Then Me._conn.Open() End If Me._trans = Me._conn.BeginTransaction() For Each adapter As Object In Me._tableAdapters Me.SetConnection(adapter, Me._conn) Me.SetTransactionAdapter(adapter, Me._trans) Me.SetTransactionCommands(adapter, Me._trans) Next End Sub ''' <summary> ''' トランザクションを開始する ''' </summary> ''' <param name="trans">トランザクション</param> ''' <remarks></remarks> Public Sub BeginTransaction(ByVal trans As SqlTransaction) Me._conn = trans.Connection Me._trans = trans For Each adapter As Object In Me._tableAdapters Me.SetConnection(adapter, Me._conn) Me.SetTransactionAdapter(adapter, Me._trans) Me.SetTransactionCommands(adapter, Me._trans) Next End Sub #End Region #Region "メソッド - Commit [トランザクションをコミットする]" ''' <summary> ''' トランザクションをコミットする ''' </summary> ''' <remarks></remarks> Public Sub Commit() Try Me._trans.Commit() Catch ex As Exception Me._trans.Rollback() Throw ex Finally If (Me._conn.State = ConnectionState.Open) Then Me._conn.Close() End If End Try End Sub #End Region #Region "メソッド - Rollback [トランザクションをロールバックする]" ''' <summary> ''' トランザクションをロールバックする ''' </summary> ''' <remarks></remarks> Public Sub Rollback() Me._trans.Rollback() If (Me._conn.State = ConnectionState.Open) Then Me._conn.Close() End If End Sub #End Region End Class
posted @ 9:23 | Comment (2)
2007年1月19日 #
今後も便利なツールが提供されそうなので、要チェックですね。
posted @ 17:16 | Comment (0)