1 名前:デフォルトの名無しさん [2007/01/12(金) 15:57:21 ] 前スレVB.NET質問スレ (Part18) pc10.2ch.net/test/read.cgi/tech/1161250878/
756 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 11:30:12 ] Moduleだけでプログラムを書く。
757 名前:753 mailto:sage [2007/02/23(金) 12:50:08 ] グローバルと言うかパブリックです。 そのパブリックもモジュールに宣言したものをグローバルと言いました。 紛らわしくてごめんなさい。 >>754 アプリ内で各画面非同期です。 管理プロセスクラスと言うのがあるんですか? ぐぐるで探してみたけど見つけれませんでした。 >>755 モジュールもクラスと考えればそうなりますね。 >>756 それはちょっと勘弁願いたい。
758 名前:デフォルトの名無しさん [2007/02/23(金) 16:52:01 ] 育児イライラどう発散してる?育児板 life8.2ch.net/test/read.cgi/baby/1171945114/ 763 名前:名無しの心子知らず[] 投稿日:2006/11/18(土) 13:06:17 ID:g2BG3ATp 娘@3ヵ月にあたりちらす。ビンタやお湯に顔面つけたり、 定規をビシッと背中にふりおろしたり、オムツ一枚にして冷たい床の上に寝転ばせたりマチ針で歯茎さしたりw 765 名前:名無しの心子知らず[] 投稿日:2006/11/18(土) 13:13:44 ID:wPPSorpM >>763 気持ち分かるよ。イライラするよね。育児って。 私はわざとどなったりして息子を怯えさせちゃうよ。 今日は怯えて指しゃぶり過ぎて指がすっごい内出血しちゃった。 766 名前:名無しの心子知らず[] 投稿日:2006/11/18(土) 13:41:34 ID:g2BG3ATp >>765 わかってくれてありがとう。 本気で死なない程度や跡が残らない程度に毎日してるよ。 たまに気がむいたら可愛がるけどね! さっきなんか一瞬だがドライヤーの熱風背中に浴びせたよw マチ針は血が出て焦ったけどね。 おすすめは、熟睡してるところにいきなり勢いよく高い高いがいいよ。 驚愕の顔で泣くのがたまらんw あとおしりの谷間の産毛をむしりとる。 痛いみたいでよく泣いてるけど跡が残らない♪
759 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 18:30:38 ] >>757 言ってることが酷く頓珍漢だから、殊勝に初歩から勉強することをお勧めする
760 名前:753 mailto:sage [2007/02/23(金) 23:49:38 ] >>759 VB6厨です。 サポート有りと無しじゃ(サポート受けるかは別として).NETが有利なんで 必要にせまられて頑張ることになってます。 クラスをもう一度勉強しなおしてきます。
761 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 01:37:24 ] 1、あらかじめカンマで区切られた文字列をカンマごとにバラバラにして配列に入れる。 2、"で囲まれたものは1つにまとめて入れる。 "a,b,c,d,e"こんなのは1個とする。 3、"が変な場所にあったり、足りないものはとりあえず無視する。 こんな条件で書いてみたんですが長いので短くきれいに改良したいのです。 どこをどうなおしたらいいんでしょうか。 記憶を頼りにメモ帳で書いたので文法もロジックも間違ってるところが 多いと思いますのでよろしくお願いします。
762 名前:761です mailto:sage [2007/02/24(土) 01:38:47 ] Public Function ABCList(ByVal ABC As String) As List(Of String) ABCList = New List(Of String) Const Comma As Char = CChar(",") Const WQuotation As Char = CChar("""") Dim ArrayOfABC() As String = ABC.Split(Comma) Dim CountABC As Integer = ArrayOfABC.Length Dim ”あり As Boolean = False Dim Temp As String = "" Dim i As Integer
763 名前:762つづき mailto:sage [2007/02/24(土) 01:39:44 ] For i = 0 To CountABC - 1 If ArrayOfABC(i).先頭が” Xor ArrayOfABC(i).最後尾が” Then If ArrayOfABC(i).先頭が” Then If i < CountABC - 1 Then Temp &= ArrayOfABC(i) ”あり = True Else ABCList.Add(ArrayOfABC(i)) End If Else If i <> 0 Then Temp &= CStr(Comma & ArrayOfABC(i)) ABCList.Add(Temp) ”あり = False Else ABCList.Add(ArrayOfABC(i)) End If End If ElseIf ”あり Then Temp &= CStr(Comma & ArrayOfABC(i)) Else ABCList.Add(ArrayOfABC(i)) End If Next Return ABCList End Function
764 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 15:10:44 ] >>762 あんまり正規表現つかったことないんで間違ってたらごめん Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim texts As String() = MySplit(TextBox1.Text) For Each Text As String In texts Console.WriteLine(Text) Next End Sub Private Function MySplit(ByVal input As String) As String() Dim pattern As String = "([^,]*("".*"")+[^,]*,)|([^,]*,)|([^,]*$)" Dim matches As MatchCollection = Regex.Matches(input, pattern) Dim texts As New List(Of String) For Each m As Match In matches texts.Add(m.Value.Trim(","c)) Next Return texts.ToArray End Function
765 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 15:45:18 ] 2005ならTextFieldParserが使えるな
766 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 16:01:00 ] そんなのあるのか でもVBの名前が付いてるとなんか使う気しねえw
767 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 16:49:23 ] 俺は気にせず使ってる。 使わない方がいい理由があんまりない。
768 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 17:08:23 ] /novbruntimerefつけてコンパイルしないと勝手にMicrosoft.VisualBasic.dll参照してるでしょ
769 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 17:57:37 ] メソッドを作る ttp://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard11.htm
770 名前:761 mailto:sage [2007/02/24(土) 18:26:03 ] 皆さんどうもありがとうございます。知らんことばっかりなんで勉強します。
771 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 18:26:47 ] VB関数は何か馬鹿にされているような気がして使う気になれないな〜。
772 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 21:25:18 ] カスタムコントロールを作くたんですが、Formに貼付けたタイミングで。。。 Private Sub Button1_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 何か処理... End Sub ↑見たいに(業務ロジックを書くにあたって)必要なイベントを自動的にFormに書く事ってできないでしょか? Clickイベントの中にテンプレートコードも同時に出力して、お前らそれ使ってロジック書け見たいなこと やりたいんですが。
773 名前:デフォルトの名無しさん [2007/02/24(土) 22:05:39 ] コントロールからは出来ない。 フォーム側の基本クラスを抽象化すれば、似たことは出来るけど。 その場合、フォームがフォームデザイナで表示できない(=実体化できない)ので開発が難しい。
774 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 22:46:52 ] っていうか、そんな定型的な処理なら最初からコントロールに 組み込んでおけばいいじゃん。
775 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 22:48:25 ] >>772 テンプレート使えばいいんじゃないの?
776 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 22:53:14 ] 2005ならオナペットを差し込めばコピペと同じだべ。
777 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 00:27:07 ] VB.NETを使用し、PageUpなどの任意のキーを、 一定間隔で押下させるソフトウェアを作成しています。 目的の動作をするプログラムは完成し、IEなどのアプリでは 正常に動作をしています。 ですが、FPSゲームなど、特定のアプリではキー入力が 受け付けられていません。 SendKeys.SendWait()、win32api.keybd_event()どちらを使用しても 結果は同じでした。 どのようにすれば、このようなアプリにもキー入力ができるのでしょうか? よろしくお願いいたします。
778 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 00:50:01 ] >VB関数は何か馬鹿にされているような気がして使う気になれないな〜。 馬鹿にされ「る」ような気がして、じゃなくて 馬鹿にされ「ている」ような気がして ってどういうことだよw
779 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 01:13:15 ] >>771 出来ないやつほどそういう事気にするのなw 普通使って簡単にできるものなら利用するだろ。 ま、趣味でプログラムやってる人はご自由に。
780 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 01:48:31 ] 恐らく半分冗談で言ってるんだろうから なんもそうムキにならんでもいいだろうに
781 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 01:53:50 ] >>777 特定のゲームでそういうことが出来ないようにしてるんじゃないか?
782 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 02:03:04 ] じゃなくてDirect Inputは(当たり前だけど)ウィンドウメッセージとして キー入力を受け取っているわけじゃないからそりゃSendKeysじゃうまくいくはず無いよ。 俺はどうやれば>>777 みたいなことが可能か見当もつかないけど、 ひょっとしてDDKとか使わないと不可能なことだったりしてね。
783 名前:772 mailto:sage [2007/02/25(日) 11:36:09 ] 皆さんどうもです。 >>776 2005なのでこのやり方でヤッテみます。
784 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 17:42:19 ] 空のファイルを作りたいんだけど、この2行でOKかな?(close、disposeされる?) .NET Framework 2.0、VB2005Exp使用 Using hStream As System.IO.FileStream = System.IO.File.Create("C:\hoge.txt") End Using
785 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 21:28:09 ] 例外さえ気にしないのなら、 System.IO.File.Create("C:\hoge.txt").Close() で十分だが。
786 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 09:41:19 ] ListViewItemsコレクション みたいな Array 系の持ってる CopyTo でコピーしてくれるのはアイテムの場所を知らせる情報だけでしょうか? CopyTo をした後に元のアイテムの項目に変更があった場合、コピー先にもそれが反映されています。 本当の意味での CopyTo を実現するメソッドまたは、方法はございませんでしょうか。。。よろしくお願いいたします。
787 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 10:34:59 ] DownloadFileメソッドでダウンロードする場合 指定したURLが存在するかしないか確認する方法は?
788 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 12:39:32 ] >>786 基礎的な知識の習得をスキップして、何でもかんでも理解してもいない 対処療法で場当たり的にやり過ごそうとか思ってるから そういうわけのわかんないこと言うんだよ。 なんやねん、本当の意味でのCopyToって。 俺様のその時その時のやりたいこと基準で本当とか決めるなよw
789 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 14:00:01 ] >なんやねん
790 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 14:12:14 ] 浅いコピー、深いコピーのことだろうよ。 自分も大して知識があるわけじゃないのに偉そうにする奴って痛いよ。
791 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 14:27:11 ] >>788 >>2
792 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 14:31:15 ] >>788 ◎対症療法 ×対処療法
793 名前:デフォルトの名無しさん [2007/02/26(月) 14:31:46 ] >>788 つ「対症療法」
794 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 14:51:16 ] >>788 の人気にshit
795 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 15:16:22 ] ttp://dictionary.goo.ne.jp/search.php?MT=shit
796 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 15:30:14 ] 質問に答えてやれよw >786 "MemberwiseClone"を調べてみて だが>787はほかの人頼む
797 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 17:08:51 ] しゃーないなw >>787 「WebResponse 404」でぐぐってみて 自分はめんどくさいからTry〜Catchでエラーに無理矢理させちゃう
798 名前:デフォルトの名無しさん [2007/02/26(月) 20:03:18 ] integer 型の計算について質問です dim aa as integer aa = (19 / 20) + 1 これが2となるのですが、1とするためにはどうすればよいでしょうか? aa = Cint(19 / 20) + 1 でも駄目なんですよね。。。 integerって整数型ですよね。。。 aa = Cint(10 / 20) + 1 // aa = 1 aa = Cint(11 / 20) + 1 // aa = 2
799 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 20:08:45 ] Math.Floorじゃダメか。
800 名前:798 mailto:sage [2007/02/26(月) 20:20:24 ] >>799 ありがとうございます。 aa = System.Math.Floor(19/20) + 1 とすることで、求めた値を得ることができるようになりました。
801 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 20:25:39 ] Fixでもええんじゃないか
802 名前:デフォルトの名無しさん [2007/02/26(月) 21:09:40 ] 今更2003に手を出さされたが 2005のDataGridViewみたいにDataGridは列固定できないのかよ・・・・ やっぱオーナードロー嫌なら2つDataGrid並べるしかないのか?
803 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 21:21:09 ] >>798-801 798は「何がしたいか」、つまり求められている仕様についてについて 何もいってないのによく回答できるよな。 質問者が馬鹿なら回答する奴もどうかしてるよ。
804 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 21:32:48 ] >>803 > aa = (19 / 20) + 1 > これが2となるのですが、1とするためにはどうすればよいでしょうか? ↑これが「仕様」じゃないとでも?
805 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 21:35:32 ] 馬鹿だろw 例えて言えば、「(x, y) = (0, 0)を通る直線」っていうのが 直線を一意に規定してると思うか?w
806 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 21:40:26 ] 全然例えになってないじゃんw
807 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 22:36:42 ] 客先から出てくる仕様ってのはしばしば>804のような物ではある。
808 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:19:46 ] 俺的予想 >>788 =>>803 =>>805 こういう奴が暴れるプロジェクトは大体失敗する。
809 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 09:26:35 ] 斜に構えた批判屋、揚げ足取りってウザイよね。 得意になってるけど、まあ勝手に言ってればって。
810 名前:デフォルトの名無しさん [2007/02/27(火) 17:02:48 ] こんにちは。VB6からVB.net 2003に転向しようとしていて苦しんでいる初心者です。 windows XP環境で下記のようなツールを作成していますがうまくいきません。 @フォーム(form1)上にボタン一つ(button1)配置 Abutton1を押すと、現在のシステム時刻を変数に代入 Bその際、代入された時刻が13:00〜15:00の間だった場合はその時刻を表示 下記のようにコーディングしてみたのですが、さっぱり動きません。 どうすれば正しく動くのか教えていただけますでしょうか? Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click Dim dtNow As DateTime = DateTime.Now Dim tsNow As TimeSpan = dtNow.TimeOfDay If tsNow >= #1:00:00 PM# And tsNow <= #3:00:00 PM# Then MsgBox(tsNow.ToString()) End If End Sub
811 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 17:10:02 ] まず最初に、特に事情が無い限り今からやるなら2005が良いと思うぞ。 質問のほうはたぶん… .NETはVB6とは違って、Sub button1_Click()を作っただけでは動かない。 プロパティウィンドウのイベントの欄に追加されていないと駄目。 雷みたいなマークね。
812 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 17:29:20 ] >>811 今テストしたらイベントはちゃんと動きますね。 というか>>810 に貼ったコードだとビルドできないことが判明・・・ 2003は実は発売直後くらいに買ったのですが、どうしても扱いなれたVB6ばかり 使ってしまって、今更になってあせって勉強を始めた始末です。 2003と2005ってそんなに違うものなのですか?
813 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 17:50:31 ] 2005はデグレ。
814 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 17:56:22 ] >>811 適当なこと書くなよ。ちゃんとHandlesが書いてあるだろ。 >>810 DateTimeは日付情報も持ってるから条件が真にならないんだろう。 DateTime構造体のHourフィールドとか見るようにしないと駄目。 2005と2003は、特に縛りが無いなら2005を使った方が将来性がある。
815 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 17:59:01 ] >>811 コレがゆとり教育ならぬ2005使いの現実。
816 名前:811 mailto:sage [2007/02/27(火) 18:16:35 ] 超寝ぼけてた そうね。Handlesね。C#と混同した上によく見てなかった。
817 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 18:22:15 ] >>810 #...#ってDateTimeリテラルだから、TimeSpanと比較しちゃいかん。
818 名前:デフォルトの名無しさん [2007/02/27(火) 18:27:21 ] TimeSpan じゃダメだろ。 Dim dtNow As DateTime = DateTime.Now If dtNow.Hour >= #1:00:00 PM#.Hour And dtNow.Hour <= #3:00:00 PM#.Hour Then MsgBox(dtNow.ToString()) End If
819 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 18:29:49 ] エレガントじゃない希ガス Dim tsNow As TimeSpan = DateTime.Now.TimeOfDay If tsNow >= #1:00:00 PM#.TimeOfDay And tsNow <= #3:00:00 PM#.TimeOfDay Then MsgBox(tsNow.ToString()) End If
820 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 18:42:53 ] なんて低レベル過ぎて泣けてくるなw
821 名前:810 mailto:sage [2007/02/27(火) 18:48:27 ] >>818 さんのコードでいけました! Timespanのまま比較すると「演算子'>='は、型'System.Timespan'に対して定義されていません」 と出て、ビルドできなかったのですが、Timespanに関する認識が相当間違っていたようです・・・。 皆さん、本当にありがとうございました。
822 名前:デフォルトの名無しさん [2007/02/27(火) 22:50:06 ] >>811 のレスみて思った とりあえず一通りさらっとでいいからMSDN読めよ と まだ移行してる連中が多いとしたら・・・ public sub main dim formA as new form1 formA.show end sub これでフォームがすぐ消えてしまいます!助けて! みたいなの出そうじゃね?www
823 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 23:10:15 ] 19 \ 20 にしようよ…
824 名前:デフォルトの名無しさん [2007/02/28(水) 08:15:54 ] けんかにならにように、皆さんの意見を入れました。w CInt(System.Math.Floor(Fix(19 \ 20)) + 1)
825 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 09:53:28 ] んなあほな…泣
826 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 10:23:07 ] 質問です。 DataGridViewで、CheckBoxを表示させておりますが、特定列のCheckBoxのEnabledをFalseにする方法はないか探しております。 ReadOnly=Trueにすることで、入力を受け付けない(クリックしてもチェックのON/OFFは出来ない)ようにはできましたが、クリック自体はできるので少々気持ちわるいです。 いい技があればご教授くださいませ。 環境はVB2005proです。
827 名前:デフォルトの名無しさん [2007/02/28(水) 10:57:10 ] キャンセルせいよ・・・・・
828 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 23:01:46 ] private void dataGridView1_CellMouseEnter( object sender, DataGridViewCellEventArgs e ) { if( e.ColumnIndex == 0 ) { Random ran = new Random(DateTime.Now.Millisecond); System.Windows.Forms.Cursor.Position = new Point( System.Windows.Forms.Cursor.Position.X + ran.Next( 500 ) - 250, System.Windows.Forms.Cursor.Position.Y + ran.Next( 500 ) - 250 ); } } ごめんうそ
829 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 00:45:48 ] VBで書いたれいよ!
830 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 00:56:20 ] >828 それはC#な上に、少々どころでなく気持ち悪いです。
831 名前:デフォルトの名無しさん [2007/03/01(木) 09:14:28 ] こんにちは、質問ですが、 ieで設定されている"ホーム ページ"をVB.NETで取得する 方法を教えてください。 Webbrowserで取得する方法でも構いません。 宜しく。
832 名前:デフォルトの名無しさん [2007/03/01(木) 10:04:44 ] >>831 のついでに教えてけろ。 IEの 「編集」−「このページの検索」でやってるページ内検索ってのは どうやってやってんのかわかる香具師いる?HTMLソース追っかけてんのかね? WebBrowserでもやれるじゃろか。 ってか初めからつけといてくれればいかったんだが・・・。
833 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 10:41:05 ] >>831 レジストリ参照すればええんじゃね
834 名前:デフォルトの名無しさん [2007/03/01(木) 10:45:00 ] いくつかPanelをのっけてそれぞれDocking=Topにしてくと、 どういう順番でやっても先にFormにおいた方のものからTopに並んでしまう。 これってTopにした順番に上から並ぶってならんのだろうか
835 名前:831 [2007/03/01(木) 10:49:21 ] >>833 サンクス、 考えても見なかった。 >>833 検索や検索文字の表示は簡単そうだが、スクロールが難しそう。
836 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 12:26:20 ] >>834 ドキュメントアウトライン
837 名前:デフォルトの名無しさん [2007/03/01(木) 12:46:32 ] ちょっと教えてください VB.NET 2003で DataAdapterを使用してデータを更新する部分です。 DataSetの中には個別に取得してきた 関連性の無い TableA TableBがあります。 登録の時この2つのテーブルに編集をかけた後 1回のUpDateで更新することは出来ないでしょうか? DataAdapterがTableという名前のDataTableにしか処理を行ってくれないので詰まっています。 出来れば2回に分けて行うのはやりたくないという状態です。
838 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 13:32:21 ] Adapterのヘルプとか読めば、出来ないってすぐわかりそうなものを。
839 名前:デフォルトの名無しさん [2007/03/01(木) 13:34:05 ] >>838 いや、もしかしたら何かできるんじゃないかな?と 本来関係の無いデータ同士は同じDataSetに入れるべきじゃないとわかってはいるんですが・・・
840 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 14:18:37 ] >>839 設計し直せwww
841 名前:デフォルトの名無しさん [2007/03/01(木) 15:13:58 ] VB.NET2003+SQLserver2000へデータのINSERTを行っています。 ConnectionをOpenしてBeginTransaction。 ExecuteNonQueryでINSERT文を発行後にCommitし ConnectionをClose、Disposeしています。 上記処理を画面上のボタンクリックイベントから実行しているのですが データがDBにINSERTされる時とされない時があります。 デバッグしてもエラーにはならず、アプリの処理的には正常。 しかしDBには反映されない時がある・・・という状況に陥っております。 正常終了しているのにDBには反映されない、そんなことがあるんでしょうか?
842 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 15:44:47 ] ぶれーくぽいんと張って、トランザクションを はったまま強制終了したりしてるからじゃないの。
843 名前:デフォルトの名無しさん [2007/03/01(木) 15:46:49 ] センセイ〜〜 メソッドの返り値である影響件数はいかがなものでしょうか? まぁ、正常に1件以上の数値が返ってきてるんだろうけど DBに反映されないって・・・ エンタープライズマネージャをデータ更新前に表示しておいて確認、 更新後にエンタープライズマネージャの表示を更新し、その後確認しても反映されていないってこと?
844 名前:デフォルトの名無しさん [2007/03/01(木) 15:57:51 ] >>842 いえ、それはないです >>843 エンタープライズマネージャでもクエリアナライザでも反映されてないんです。 INSERTが単にコケるならまだわかるんですが・・・ データ不正も疑ったのですがそうでもないようで困り果てております
845 名前:デフォルトの名無しさん [2007/03/01(木) 16:02:24 ] たしかプロファイラだっけ? SQL鯖に投げられたSQLとか確認できる奴でチェックして まずは鯖で直にそれ実行してみれば? 何が悪いのかを狭めていかないと判らないと思う 反映されないとかっての 俺はコーディングミス以外で今まで経験は無いんだが・・
846 名前:デフォルトの名無しさん [2007/03/01(木) 16:13:32 ] >>845 やっぱりそれしかないですかね・・・ プロファイラ掘ってみます コーディングミスなら確かにわかるのですが 全てのデータが更新されないのではなく、時々更新できないデータが出るので・・・ 色々ありがとうございました。 環境は違いますがこれに似たような状況でした ttp://fukkey.dyndns.org/pins/sqls/040404/23954.html
847 名前:834 mailto:sage [2007/03/01(木) 16:14:30 ] >>836 そうかこういう場合のためにあれはあったのか。 わかったサンキュー。
848 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 16:49:16 ] >>846 >>843 の言ってるExecuteメソッドの戻り値は?
849 名前:デフォルトの名無しさん [2007/03/01(木) 17:44:06 ] >>848 1が戻ってきてます 処理件数は1件なので正常・・・ 雛見沢に行ってきます スレ汚し失礼しました
850 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 18:46:51 ] VB2005Proを使用しております。 Dim Image1 As Image = "イメージA" Dim Image2 As Image = Image1.GetThumbnailImage(10, 10, 〜 で画像のサイズは小さく出来るのですが ここで一緒に品質も落とす方法がわかりません どのような方法(クラス、メソッド)を使用すれば品質も 指定したかたちで、Image型を作ることが出来るのでしょうか?
851 名前:デフォルトの名無しさん [2007/03/01(木) 18:59:15 ] 落とす理由はよくわからんが ImageCodecInfo 使えないかな?
852 名前:デフォルトの名無しさん [2007/03/01(木) 19:01:28 ] あ、まちがったw System.Drawing.Imaging 名前空間のEncode辺りとかさ のつもりだった
853 名前:850 mailto:sage [2007/03/01(木) 19:16:55 ] レスありがとうございます。 System.Drawing.Imaging.EncoderParameter System.Drawing.Imaging.EncoderParameters System.Drawing.Imaging.ImageFormat を使用して形式や品質を変更出来る事がわかりました。 今ヘルプとGoogleで調べているのですが 使用方法が画像の保存(saveメソッド等)を対象にしている ものばかりで、画像に保存ではなくそのまま Image型に入れる方法を探してます。
854 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 20:07:46 ] ファイルにしないのに画質を落とす意味がわからん。 そもそも画質は「落とす」んではなく、非可逆圧縮の結果として「落ちる」もんなんじゃねえの?
855 名前:デフォルトの名無しさん [2007/03/01(木) 20:13:00 ] >>853 画質落としたサムネイルか・・・ 一意な名前の一時ファイルでやっちまうとかもありだけど・・・・ 縮小表示した時の補完方法の変更で画質落とすことにならんかな? 多少落ちると思うけど・・・・
856 名前:853 mailto:sage [2007/03/01(木) 20:33:48 ] レスありがとうございます。 言われてみれば画質が落ちるって 非可逆圧縮の結果ですよね ぜんぜん気がつきませんでしたorz Image型内で〜とう発想自体変でしたね やはり一時ファイルで実装する方が無難でいいですね