前スレ
VB.NET質問スレ(Part40)
http://toro.2ch.net/test/read.cgi/tech/1365857015/
VB.NET質問スレ(Part41)
http://peace.2ch.net/test/read.cgi/tech/1391334405/
VB.NET質問スレ(Part42)
http://echo.2ch.net/test/read.cgi/tech/1419148239/
探検
VB.NET質問スレ(Part43) [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2016/06/15(水) 11:41:09.50ID:bPj3FmGk454デフォルトの名無しさん
2016/12/29(木) 11:15:53.14ID:KEC+z4ay455デフォルトの名無しさん
2016/12/29(木) 11:42:16.70ID:/FtNyMoj 俺はSQLite使ってる
456デフォルトの名無しさん
2016/12/29(木) 17:42:29.56ID:qvNXwZDz457デフォルトの名無しさん
2016/12/29(木) 18:11:55.59ID:ICm4kcbN 今時ADO.NETなんて括りに意味はないぞ
Entity FrameworkとかもADO.NETに含まれているらしく、
もはや「.NETのデータベース関連の機能」というだけのふわっとした総称でしかない
単純に低レベルAPI使って普通にSQL投げたいだけならDbConnectionのあたりを適当にググれば十分
Entity FrameworkとかもADO.NETに含まれているらしく、
もはや「.NETのデータベース関連の機能」というだけのふわっとした総称でしかない
単純に低レベルAPI使って普通にSQL投げたいだけならDbConnectionのあたりを適当にググれば十分
458デフォルトの名無しさん
2016/12/29(木) 19:04:08.62ID:qvNXwZDz459デフォルトの名無しさん
2016/12/29(木) 20:37:49.89ID:KEC+z4ay ストアドパッケージ使ってるとEntity Frameworkを使う気になれない
460デフォルトの名無しさん
2017/01/02(月) 12:24:29.63ID:sj4687w4 VBに限らずだけど、ORMっていうの?オブジェクトに対してSQL生成してくれる
機能あるけど、SQL書かないってそんなにメリットあるんですかね?
複雑なSELECT文ならORMでは対応しずらいので結局SQL書くだろうし、その他の
INSERT・UPDATE・DELETE・MERGEなんてバリエーションが限られるだろうから、
テーブル名と列名さえあれば、ExcelVBAとかVBSとか自作VBツールとかで自動生成可能なはず。
「SQL書いてないけど、Insertできたよ!」っていうコーディングの感覚は
実際にやってみて新鮮だったけど、Insert文ぐらい書けよ、とも思う。
機能あるけど、SQL書かないってそんなにメリットあるんですかね?
複雑なSELECT文ならORMでは対応しずらいので結局SQL書くだろうし、その他の
INSERT・UPDATE・DELETE・MERGEなんてバリエーションが限られるだろうから、
テーブル名と列名さえあれば、ExcelVBAとかVBSとか自作VBツールとかで自動生成可能なはず。
「SQL書いてないけど、Insertできたよ!」っていうコーディングの感覚は
実際にやってみて新鮮だったけど、Insert文ぐらい書けよ、とも思う。
461デフォルトの名無しさん
2017/01/02(月) 12:28:47.75ID:ukc00ODR 中途半端なORMはいらんよね。
462デフォルトの名無しさん
2017/01/02(月) 14:08:47.76ID:CPceoiNS >>460
DRY
ツールで自動生成するんならORMでもいい、生成されたSQLを管理しなくて済む、と考えることもできる
自動生成は生成物を直接弄らないことを徹底できるならいいけど、大抵は自動生成コードが独り歩きして破綻する
そうして変更時の修正箇所がどんどん増えてくんだよ
DRY
ツールで自動生成するんならORMでもいい、生成されたSQLを管理しなくて済む、と考えることもできる
自動生成は生成物を直接弄らないことを徹底できるならいいけど、大抵は自動生成コードが独り歩きして破綻する
そうして変更時の修正箇所がどんどん増えてくんだよ
463デフォルトの名無しさん
2017/01/02(月) 16:02:44.86ID:CCmbcSgt 460です。
>>462
すみません、「自作ツールで自動生成」って紛らわしいこと書いちゃったけど、
VB側にSQLを記述する(=SQLを構築するのSharedなFunctionをたくさん作る)ってのが
前提にあって、INSERTとかは手打ちするのもアレだから自作ツールにSQL生成させて
それをVBなりPHPなりJavaなりで使えるようにテキストエディタのキーマクロでも使って編集し、
そいつをコピペする、ってことです。
なので、「SQLを管理しなくて済む」というより「しっかり管理したい」
ということなんですね。
で、この手順なら(Select以外の)SQLをPG言語側のソースに落とし込むのに
少なくとも手打ちよりかはスムーズにできるので、今更言語側でブラックボックス化
してもらう必要ないのに、と思うわけであります。
まぁうちの案件規模が小さいからそう思えるのかも。
>>462
すみません、「自作ツールで自動生成」って紛らわしいこと書いちゃったけど、
VB側にSQLを記述する(=SQLを構築するのSharedなFunctionをたくさん作る)ってのが
前提にあって、INSERTとかは手打ちするのもアレだから自作ツールにSQL生成させて
それをVBなりPHPなりJavaなりで使えるようにテキストエディタのキーマクロでも使って編集し、
そいつをコピペする、ってことです。
なので、「SQLを管理しなくて済む」というより「しっかり管理したい」
ということなんですね。
で、この手順なら(Select以外の)SQLをPG言語側のソースに落とし込むのに
少なくとも手打ちよりかはスムーズにできるので、今更言語側でブラックボックス化
してもらう必要ないのに、と思うわけであります。
まぁうちの案件規模が小さいからそう思えるのかも。
464デフォルトの名無しさん
2017/01/02(月) 16:07:50.85ID:CPceoiNS465デフォルトの名無しさん
2017/01/02(月) 16:17:05.07ID:icN3LuLp 最初のだけ自動生成すればええんやで
修正時は全部手で作ればええんや
修正時は全部手で作ればええんや
466デフォルトの名無しさん
2017/01/02(月) 16:30:50.83ID:CPceoiNS ORMの意義はSQLコマンドを生成することよりもむしろ
テーブルの行とオブジェクトをマッピングすることにある
いちいちカラムとプロパティの対応付けを猿のように手書きしなくても
自動でやってくれるツールだと割り切って使えば悪いもんじゃない
テーブルの行とオブジェクトをマッピングすることにある
いちいちカラムとプロパティの対応付けを猿のように手書きしなくても
自動でやってくれるツールだと割り切って使えば悪いもんじゃない
467デフォルトの名無しさん
2017/01/02(月) 16:45:34.53ID:GHxiRgy/ EFって綺麗にモデリングされてる前提じゃないの?
正規化やキー設定もまともにできない我々日本人には厳しいと思う
ダラダラ残業して腐ったスキーマに愚痴言いながら頭悪いSQL書いてDapperで手軽にタイプセーフにするぐらいがちょうどいいよ
正規化やキー設定もまともにできない我々日本人には厳しいと思う
ダラダラ残業して腐ったスキーマに愚痴言いながら頭悪いSQL書いてDapperで手軽にタイプセーフにするぐらいがちょうどいいよ
468デフォルトの名無しさん
2017/01/02(月) 17:19:12.57ID:CCmbcSgt469デフォルトの名無しさん
2017/01/02(月) 17:22:48.96ID:mABnUerH470デフォルトの名無しさん
2017/01/02(月) 18:09:41.42ID:vlUjiKZm471デフォルトの名無しさん
2017/01/02(月) 22:21:51.15ID:51wJDYeu めんどくさいからシリアライズしてBlobにぶち込んでやる
472デフォルトの名無しさん
2017/01/08(日) 15:10:33.24ID:mLyjhJYP C#スレのVBキチガイはよ引き取って
VB.NETerってガイジしかいないのか?
VB.NETerってガイジしかいないのか?
473デフォルトの名無しさん
2017/01/11(水) 00:13:49.51ID:VkQ91OHA はい
ガイジしかいないので
こっちには来ない方が身のためですよ
ガイジしかいないので
こっちには来ない方が身のためですよ
474デフォルトの名無しさん
2017/01/19(木) 16:24:13.54ID:OuvvCRzR ああああああああああああああああああああああああああああ
あいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいい
うううううううううううううううううううううううううううううううううううううううううううううううう
ええええええええええええええええええええええええええええええええええええええええええええええ
あいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいい
うううううううううううううううううううううううううううううううううううううううううううううううう
ええええええええええええええええええええええええええええええええええええええええええええええ
475デフォルトの名無しさん
2017/01/19(木) 16:32:49.65ID:NUbhUDcn ああああああ
476デフォルトの名無しさん
2017/01/19(木) 16:33:24.09ID:NUbhUDcn ああああああああああああああああああああああああああああああああああああ
477デフォルトの名無しさん
2017/01/19(木) 16:34:28.71ID:NUbhUDcn あああああああああああああああああああああああああああああああああああああああああ
いいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいい
うううううううううううううううううううううううううううううううううううううううううううううううううううううううう
ええええええええええええええええええええええええええええええええええええええええええええ
おおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおお
かかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかか
きききききききききききききききききききききききききききききききききききききききききききき
くくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくく
けけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけ
こここここここここここここここここここここここここここここここここここここここここここここここ
http://http://http://http://http://http://http://http://http://http://http://http://http://http://
いいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいい
うううううううううううううううううううううううううううううううううううううううううううううううううううううううう
ええええええええええええええええええええええええええええええええええええええええええええ
おおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおお
かかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかかか
きききききききききききききききききききききききききききききききききききききききききききき
くくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくくく
けけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけけ
こここここここここここここここここここここここここここここここここここここここここここここここ
http://http://http://http://http://http://http://http://http://http://http://http://http://http://
478デフォルトの名無しさん
2017/01/19(木) 16:36:20.68ID:NUbhUDcn あああああああああああああああああああああああああああああああああああああああああ
いいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいい
うううううううううううううううううううううううううううううううううううううううううううううううううううううううう
ええええええええええええええええええええええええええええええええええええええええええええ
おおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおお
いいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいい
うううううううううううううううううううううううううううううううううううううううううううううううううううううううう
ええええええええええええええええええええええええええええええええええええええええええええ
おおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおお
479デフォルトの名無しさん
2017/01/19(木) 16:36:42.86ID:NUbhUDcn http://http://http://http://http://http://http://http://http://http://http://http://http://http://
>>1-10>>11-20>>21-30>>1-10>>11-20>>21-30>>31-40>>41-50>>51-60
>>1-10>>11-20>>21-30>>1-10>>11-20>>21-30>>31-40>>41-50>>51-60
480デフォルトの名無しさん
2017/01/19(木) 16:38:00.89ID:C+ssGhBJ481デフォルトの名無しさん
2017/01/19(木) 16:38:48.36ID:C+ssGhBJ482デフォルトの名無しさん
2017/01/19(木) 16:39:02.17ID:TQyidl81483デフォルトの名無しさん
2017/01/20(金) 21:19:52.47ID:rk0wOt7y My.Computer.FileSystem.WriteAllText 連続で使うとだめなのかなぁ。
30行目あたりでロックかかったまま、削除もできない。
30行目あたりでロックかかったまま、削除もできない。
484デフォルトの名無しさん
2017/01/20(金) 21:53:51.85ID:gkjLNWs8 Fileクラスの方のWriteAllTextを使ってみたら?
Myは基本的に糞なので、使う前に標準の.NETのAPIで同じようなのがないか確認したほうがいいよ
Myは基本的に糞なので、使う前に標準の.NETのAPIで同じようなのがないか確認したほうがいいよ
485デフォルトの名無しさん
2017/01/21(土) 16:11:14.78ID:q70X02VY Fileクラス側を使ったらうまくいった!
今回はたまたま見つけたからいいけど、見逃してたらわからないかも・・
今回はたまたま見つけたからいいけど、見逃してたらわからないかも・・
486デフォルトの名無しさん
2017/02/03(金) 20:50:22.69ID:IoUjw6fZ VB2010で作ったやつが↓の3ソフトでことごとくウィルス判定されるんだが・・・どういうこと?
Bkav:[.NET executable]
CrowdStrike Falcon:(ML)malicious_confidence_100% (D)
Qihoo-360:HEUR/QVM03.0.0000.Malware.Gen
Bkav:[.NET executable]
CrowdStrike Falcon:(ML)malicious_confidence_100% (D)
Qihoo-360:HEUR/QVM03.0.0000.Malware.Gen
487デフォルトの名無しさん
2017/02/04(土) 08:24:10.05ID:Drluuz2Q おまえがウィルスなんだよ
488デフォルトの名無しさん
2017/02/04(土) 08:56:18.21ID:jd1YqHKB489デフォルトの名無しさん
2017/02/07(火) 08:56:41.61ID:/DttlwM1 スリープからの復旧をSystemEvents.PowerModeChangedイベントで取得してるんだけど
Windows7やWindows8.1のデスクトップPCでは正常に動作するけどWindows8.1版のSurface Pro3だと動作しない
解決方法ご存じないですか?
Windows7やWindows8.1のデスクトップPCでは正常に動作するけどWindows8.1版のSurface Pro3だと動作しない
解決方法ご存じないですか?
490デフォルトの名無しさん
2017/02/07(火) 09:30:57.72ID:YgeqT8Pn Instant Goとかその辺で実際にはスリープになってないとかそんなんじゃない
Windows 10のモダンスタンバイとやらではこんな記事があったけど
https://blogs.msdn.microsoft.com/japan_platform_sdkwindows_sdk_support_team_blog/2016/06/09/
Windows 10のモダンスタンバイとやらではこんな記事があったけど
https://blogs.msdn.microsoft.com/japan_platform_sdkwindows_sdk_support_team_blog/2016/06/09/
491デフォルトの名無しさん
2017/02/08(水) 10:12:32.24ID:AcXEhNH6 datareaderで数万件のデータをデータベースから取得したいんですが数十秒くらいかかってしまいます
どうにかはやくできないでしょうか?
どうにかはやくできないでしょうか?
492デフォルトの名無しさん
2017/02/08(水) 14:47:01.33ID:MzR5zH1p クエリを簡単にする
列数を減らす
列数を減らす
493デフォルトの名無しさん
2017/02/08(水) 19:21:32.32ID:jEQSlM2Q 普通に書けばそんな時間かからんよ
494デフォルトの名無しさん
2017/02/08(水) 22:02:33.67ID:AcXEhNH6 単純なSELECTなんですよ
30000件で15秒もかかってしまいます
最後までread回しただけなのに…
30000件で15秒もかかってしまいます
最後までread回しただけなのに…
495デフォルトの名無しさん
2017/02/08(水) 22:07:06.15ID:qO3OS2QJ ディスクやネットワークが糞なんだろ
あと見落としやすいのがDBサーバーのメモリ量
繰り返し読むならキャッシュヒット率が全然違ってくる
いずれにしてもVB関係ない
あと見落としやすいのがDBサーバーのメモリ量
繰り返し読むならキャッシュヒット率が全然違ってくる
いずれにしてもVB関係ない
496デフォルトの名無しさん
2017/02/08(水) 22:11:04.89ID:qO3OS2QJ まずはVBを介さずにDBクライアントを使って直接コマンド実行してアンロードしてみたらどうだ
それでも遅かったらVB関係ないとわかるし、遅くなかったらVBでの読み方がまずいんだろう
一番にその程度の切り分けはやれよ
それでも遅かったらVB関係ないとわかるし、遅くなかったらVBでの読み方がまずいんだろう
一番にその程度の切り分けはやれよ
497デフォルトの名無しさん
2017/02/08(水) 23:05:47.54ID:jRyNzfB1 ListViewのアイテムをすべて選択するコードなんですが
5万件くらいで重いのですが軽くする方法は無いものでしょうか。
For i As Integer = 0 To lvMain.Count - 1
lvMain.SelectedIndices.Add(i)
Next
5万件くらいで重いのですが軽くする方法は無いものでしょうか。
For i As Integer = 0 To lvMain.Count - 1
lvMain.SelectedIndices.Add(i)
Next
498デフォルトの名無しさん
2017/02/08(水) 23:15:30.62ID:qO3OS2QJ499デフォルトの名無しさん
2017/02/08(水) 23:58:47.11ID:Bd3hz3fH500デフォルトの名無しさん
2017/02/09(木) 07:08:33.82ID:nszO0639 >>499
残念ながらBeginUpdate()では改善しませんでした。
ListViewは既にVirtualModeです。
どうもSendMessageでLVM_SETITEMSTATEを送ってやればよさそうという
ところまで来ました。
残念ながらBeginUpdate()では改善しませんでした。
ListViewは既にVirtualModeです。
どうもSendMessageでLVM_SETITEMSTATEを送ってやればよさそうという
ところまで来ました。
501デフォルトの名無しさん
2017/02/09(木) 23:54:41.55ID:nszO0639 LVM_SETITEMSTATEをSendMessageで一瞬で全選択できるようになりました。
502デフォルトの名無しさん
2017/02/10(金) 12:28:40.22ID:izdz/JI9 全選択なんて組み込みのメソッドで用意されててもよさそうなものだけどないんだねw
今まで気づかなかった
今まで気づかなかった
503デフォルトの名無しさん
2017/02/20(月) 16:07:27.58ID:OgBdAYpr ふらっとC#スレの質問見てちょっと思ったんんだけど、
C#ではメソッドの戻り値に属性を適用する明示的な書き方があるけど、
VBではこれどうやって書くんだっけ?
https://msdn.microsoft.com/ja-jp/library/b3787ac0.aspx
C#ではメソッドの戻り値に属性を適用する明示的な書き方があるけど、
VBではこれどうやって書くんだっけ?
https://msdn.microsoft.com/ja-jp/library/b3787ac0.aspx
504デフォルトの名無しさん
2017/02/20(月) 17:17:50.36ID:M6W8cvGm >>503
https://msdn.microsoft.com/ja-jp/library/z0w1kczw(v=vs.120).aspx
書き方はC#と同じだな
ただし、戻り値に属性指定とかNot supportedらしい
そもそも戻り値はメソッド内で生成されるんだから、属性を呼び出し側で指定できるのがおかしな気がする
https://msdn.microsoft.com/ja-jp/library/z0w1kczw(v=vs.120).aspx
書き方はC#と同じだな
ただし、戻り値に属性指定とかNot supportedらしい
そもそも戻り値はメソッド内で生成されるんだから、属性を呼び出し側で指定できるのがおかしな気がする
505デフォルトの名無しさん
2017/02/20(月) 19:49:55.03ID:C+5kpca0 >>504
ありがと
ありがと
506デフォルトの名無しさん
2017/02/21(火) 19:33:45.43ID:zN7/wz8g 経過時間を設定したContent.Timeで割って余りが0の時にReload()を実行するようになってるんですが、
Reload()を何回も実行するんです。
minuteをContent.Timeで割った回数実行してしまうようなんですよね。
何かおかしいでしょうか?
Sub _Check()
'1分過ぎた
minute += 1
'すべてのページをチェック
For Each Content As Contents In List
'指定した時間が過ぎていたら
If minute Mod Content.Time = 0 Then
'確認=>表示 再生
If Content.ReLoad() Then
Reload()を何回も実行するんです。
minuteをContent.Timeで割った回数実行してしまうようなんですよね。
何かおかしいでしょうか?
Sub _Check()
'1分過ぎた
minute += 1
'すべてのページをチェック
For Each Content As Contents In List
'指定した時間が過ぎていたら
If minute Mod Content.Time = 0 Then
'確認=>表示 再生
If Content.ReLoad() Then
507デフォルトの名無しさん
2017/02/21(火) 19:35:31.07ID:zN7/wz8g >>506
補足ですけど、minuteが1進む毎(1分)に、minuteをContent.Timeで割った回数実行してしまうみたいです。
補足ですけど、minuteが1進む毎(1分)に、minuteをContent.Timeで割った回数実行してしまうみたいです。
508デフォルトの名無しさん
2017/02/21(火) 21:50:52.18ID:OY4bcTch エスパー召喚が必要だねw
509デフォルトの名無しさん
2017/02/21(火) 22:26:45.05ID:zN7/wz8g510デフォルトの名無しさん
2017/02/22(水) 10:13:28.88ID:hB8WtiG5 そこで足りると思うんなら
ステップ実行でわかるだろうよ
ステップ実行でわかるだろうよ
511デフォルトの名無しさん
2017/02/22(水) 11:03:24.94ID:di0eqEJ2512デフォルトの名無しさん
2017/02/25(土) 08:49:36.06ID:Z1WBMYZL dllのロードに関して質問がございます。
---------- ディレクトリ構成 -------------------------------------------------------
[1]C:\AppDir\Main.exe 実行ファイル
[2]C:\AppDir\Parts.dll 実行ファイルから参照設定される
[3]C:\AppDir\SubDir1\Function.dll [1]の実行ファイルからAssembly.LoadFromで呼ばれる
[4]C:\AppDir\SubDir1\Parts.dll [3]から参照設定される
[5]C:\AppDir\SubDir2\Function.dll [1]の実行ファイルからAssembly.LoadFromで呼ばれる
[6]C:\AppDir\SubDir2\Parts.dll [5]から参照設定される
--------------------------------------------------------------------------------
[3]のdllと[5]のdllを実行ファイルで選択した内容によって切り替えてロードするのですが、
[4]と[6]のdllを参照せずに、実行ファイル起動時に自動でロードされる[2]のParts.dllを読み込みに行きます。
機能追加やデータ構造の変更に伴うメソッドの修正で[2]と[4]と[6]の内容が一致していない場合に、
MissingMemberExceptionが発生してしまいます。
[2]のParts.dll に修正が発生した段階で、[4]と[6]をビルドし直して配布する必要があり、
出来れば[2]のParts.dll の修正と切り離して管理したいと考えております。
既に実行ファイル起動時に[2]がロードされている状態で、
[3]をロードする場合は[4]を、[5]をロードする場合は[6]を参照するような方法はございますでしょうか?
---------- ディレクトリ構成 -------------------------------------------------------
[1]C:\AppDir\Main.exe 実行ファイル
[2]C:\AppDir\Parts.dll 実行ファイルから参照設定される
[3]C:\AppDir\SubDir1\Function.dll [1]の実行ファイルからAssembly.LoadFromで呼ばれる
[4]C:\AppDir\SubDir1\Parts.dll [3]から参照設定される
[5]C:\AppDir\SubDir2\Function.dll [1]の実行ファイルからAssembly.LoadFromで呼ばれる
[6]C:\AppDir\SubDir2\Parts.dll [5]から参照設定される
--------------------------------------------------------------------------------
[3]のdllと[5]のdllを実行ファイルで選択した内容によって切り替えてロードするのですが、
[4]と[6]のdllを参照せずに、実行ファイル起動時に自動でロードされる[2]のParts.dllを読み込みに行きます。
機能追加やデータ構造の変更に伴うメソッドの修正で[2]と[4]と[6]の内容が一致していない場合に、
MissingMemberExceptionが発生してしまいます。
[2]のParts.dll に修正が発生した段階で、[4]と[6]をビルドし直して配布する必要があり、
出来れば[2]のParts.dll の修正と切り離して管理したいと考えております。
既に実行ファイル起動時に[2]がロードされている状態で、
[3]をロードする場合は[4]を、[5]をロードする場合は[6]を参照するような方法はございますでしょうか?
513デフォルトの名無しさん
2017/02/25(土) 10:35:53.15ID:WSmv7/tX 俺はexe一個にしたい派なので。
514デフォルトの名無しさん
2017/02/25(土) 12:23:39.45ID:S4wbN3RD >>512
MEF使うとか
MEF使うとか
515512
2017/02/25(土) 21:04:10.95ID:Z1WBMYZL516デフォルトの名無しさん
2017/03/03(金) 18:45:03.41ID:7BBiAnh4 integerで50000つかえたっけ?
517デフォルトの名無しさん
2017/03/03(金) 18:46:31.69ID:oIwShl3c 余裕のヨッチャン
518デフォルトの名無しさん
2017/03/04(土) 17:05:37.98ID:jyXc82yN シリアル通信で受信処理について教えてください
パケット構造が固定長で"STX" + 10BYTE + "ETX"の12バイト構造となっています
ReadByte()で1バイトずつ取得して配列に格納しているのですが、
連続受信中何かの拍子に配列がずれて1バイト目が"STX"や12バイト目が"ETX"とならない場合があります
こうなった場合、以降の受信も配列が崩れて処理ができなくなります
一般的にどのような対策をするのでしょうか
配列の1バイト目、12バイト目が"STX","ETX"でなければ何か処理をすればよいのだと思いますが・・・
パケット構造が固定長で"STX" + 10BYTE + "ETX"の12バイト構造となっています
ReadByte()で1バイトずつ取得して配列に格納しているのですが、
連続受信中何かの拍子に配列がずれて1バイト目が"STX"や12バイト目が"ETX"とならない場合があります
こうなった場合、以降の受信も配列が崩れて処理ができなくなります
一般的にどのような対策をするのでしょうか
配列の1バイト目、12バイト目が"STX","ETX"でなければ何か処理をすればよいのだと思いますが・・・
519デフォルトの名無しさん
2017/03/04(土) 17:28:05.56ID:4F1kG7wq 1バイト目とか12バイト目とか意識するのがまずいのでは?
STXが来たらバッファに詰めていくETXが来たらそれを取り出すで
問題ないと思う。
STXが来たらバッファに詰めていくETXが来たらそれを取り出すで
問題ないと思う。
520デフォルトの名無しさん
2017/03/04(土) 18:24:21.25ID:W250mNnr521デフォルトの名無しさん
2017/03/04(土) 18:51:32.79ID:NAI/204b 何バイト目かを意識するのがまずいのもあると思うけど
そういうのってエラー検知して再送じゃないの?
そういうのってエラー検知して再送じゃないの?
522デフォルトの名無しさん
2017/03/05(日) 03:05:35.57ID:L54Sdfag523デフォルトの名無しさん
2017/03/05(日) 03:20:26.95ID:f1XixyjT524デフォルトの名無しさん
2017/03/05(日) 09:04:24.11ID:ZV0AIXGV まぁSTX〜ETXまで精々数百バイトだろうし、大げさに騒ぐほどじゃないな
ETXの後ろにBCCあるタイプだとして
俺がよく使うのは System.Collections.ObjectModel.Collection(Of Byte) なバッファ用意しといて
1.ReadByteの内容がSTXだったら バッファ.Clear した上で ReadByteの内容(STX)をAdd
2.STX以外だったら
2-1.バッファの最後尾が ETX だったら、今きたのはチェックサムと思って ACK/NCK 返しつつメイン処理へ受け渡し
2-2 バッファの最後尾が ETX じゃなかったら、ケツに Add
ETXの後ろにBCCあるタイプだとして
俺がよく使うのは System.Collections.ObjectModel.Collection(Of Byte) なバッファ用意しといて
1.ReadByteの内容がSTXだったら バッファ.Clear した上で ReadByteの内容(STX)をAdd
2.STX以外だったら
2-1.バッファの最後尾が ETX だったら、今きたのはチェックサムと思って ACK/NCK 返しつつメイン処理へ受け渡し
2-2 バッファの最後尾が ETX じゃなかったら、ケツに Add
525デフォルトの名無しさん
2017/03/05(日) 09:06:20.08ID:ZV0AIXGV × 2.STX以外だったら
○ 2.STX以外で、かつバッファの先頭は STX だったら
○ 3.STX以外で、かつバッファの先頭は STX 以外だったらゴミデータとしてスルー
○ 2.STX以外で、かつバッファの先頭は STX だったら
○ 3.STX以外で、かつバッファの先頭は STX 以外だったらゴミデータとしてスルー
526デフォルトの名無しさん
2017/03/05(日) 09:16:08.94ID:4Mp9Np6+527デフォルトの名無しさん
2017/03/05(日) 12:15:05.55ID:ZV0AIXGV 軽そうなイメージ
528デフォルトの名無しさん
2017/03/05(日) 12:45:52.11ID:u6nsQtE2 なんかアホな議論してるけど、上にも書いたが必要なのは質問者が
ステートマシンという超簡単な概念を一つ覚えて使う、それだけ。
ステートマシンという超簡単な概念を一つ覚えて使う、それだけ。
529デフォルトの名無しさん
2017/03/05(日) 13:16:04.21ID:4Mp9Np6+ >>527
List(Of T)の方が速いし軽い
というかCollection(Of T)は実装を全部List(Of T)に丸投げしてる
継承してメソッドをオーバーライドすることで要素の追加削除時に独自の処理を入れられるように
いくつか拡張ポイントを追加してあるだけ
継承しないなら何の意味もない、むしろ誤解を招くだけだから使わない方がいい
List(Of T)は後で独自の処理を入れたくなったときに実装変えられないからクラス外に公開するべきではないというのもあるけど、
それを考慮するならCollection(Of T)ではなく IList(Of T) を使ったほうがいいし
List(Of T)の方が速いし軽い
というかCollection(Of T)は実装を全部List(Of T)に丸投げしてる
継承してメソッドをオーバーライドすることで要素の追加削除時に独自の処理を入れられるように
いくつか拡張ポイントを追加してあるだけ
継承しないなら何の意味もない、むしろ誤解を招くだけだから使わない方がいい
List(Of T)は後で独自の処理を入れたくなったときに実装変えられないからクラス外に公開するべきではないというのもあるけど、
それを考慮するならCollection(Of T)ではなく IList(Of T) を使ったほうがいいし
530デフォルトの名無しさん
2017/03/05(日) 13:27:50.14ID:Q4pvsIt3 VBerにとって、VBが輝いていた時代を共に駆け抜けた旧友を想起させる特別な名前、それがCollection
気持ちは分かるが.NETのCollectionは彼とは何の関係もない別人なんだ
もういい加減過去に拘るのはやめて前へ進もう
気持ちは分かるが.NETのCollectionは彼とは何の関係もない別人なんだ
もういい加減過去に拘るのはやめて前へ進もう
531デフォルトの名無しさん
2017/03/05(日) 14:12:32.50ID:Xaz4+HsB ステートマシンとかいう概念を知らなくても普通は思いつくけどね
532デフォルトの名無しさん
2017/03/05(日) 14:21:01.11ID:dGez6Bo2 質問者がデータは10バイトの固定長だって言ってるんだから
Listを使う必要もなければ、STXだのETXだの本来不要なゴミを取っておく必要もない
なんかしょうもない話してるよな本当
Listを使う必要もなければ、STXだのETXだの本来不要なゴミを取っておく必要もない
なんかしょうもない話してるよな本当
533デフォルトの名無しさん
2017/03/05(日) 14:31:06.98ID:x9pPtpWR MSAMでCOMポートからチマチマデータを取ってた世代には(ry
534デフォルトの名無しさん
2017/03/05(日) 16:01:29.71ID:u/xcfN5N VBと過ごした青春
なんか嫌だなそれ
なんか嫌だなそれ
535デフォルトの名無しさん
2017/03/09(木) 20:01:49.55ID:ouxZaahl 簡易的にずれてたらETX来るまで1バイトずつ取り込んで読み捨てすればいいんじゃね?
536デフォルトの名無しさん
2017/03/10(金) 17:23:20.12ID:tq5lUfKn タプルっていう存在を今、初めて知ったんだけど。
複数の値を返すのはいいけど・・・
こんなんじゃなーいって思ったのは俺だけかな?
複数の値を返すのはいいけど・・・
こんなんじゃなーいって思ったのは俺だけかな?
537デフォルトの名無しさん
2017/03/10(金) 18:38:21.20ID:wvkqDHaL >>536
具体的に
具体的に
538デフォルトの名無しさん
2017/03/10(金) 19:46:18.91ID:PPM6ZnbB デコンストラクタでタプルも扱いやすくなる
539デフォルトの名無しさん
2017/03/13(月) 21:14:52.90ID:4mOoeOmZ Visual Basicの今後
https://www.infoq.com/jp/news/2017/03/vb-strategy
https://www.infoq.com/jp/news/2017/03/vb-strategy
540デフォルトの名無しさん
2017/03/14(火) 00:27:16.98ID:pXYRmO5x Microsoftも見限った感あるし流石にもうそろそろ消滅の流れじゃないか
541デフォルトの名無しさん
2017/03/14(火) 19:24:57.60ID:O/GpwfFn C#に移りなよ
ってかもうみんな両用してるか
ってかもうみんな両用してるか
542デフォルトの名無しさん
2017/03/18(土) 20:44:47.06ID:ybox44GA バッファがの処理が追い付かないときの為のフロー制御だよな
543デフォルトの名無しさん
2017/03/18(土) 21:33:24.54ID:TQTGmQah C++ならともかく、VB.NETとC#の違いなんて、東北弁と九州弁の違いでしかない
544デフォルトの名無しさん
2017/03/22(水) 21:49:26.12ID:Lj+MxEQk 今日見た関数が戻り値の型がBooleanで条件によってはTrueを返す、という関数でした
ただその条件分岐に引っかからなかった場合どこにもFalseを返すとは書いてませんでした
自分で試してみたところその場合はFalseになったのですが、これは言語仕様
がそうなっているということですか?
可読性はともかく特に使っても問題ないでしょうか?
ただその条件分岐に引っかからなかった場合どこにもFalseを返すとは書いてませんでした
自分で試してみたところその場合はFalseになったのですが、これは言語仕様
がそうなっているということですか?
可読性はともかく特に使っても問題ないでしょうか?
545デフォルトの名無しさん
2017/03/22(水) 21:58:23.84ID:A/QsCQKR546デフォルトの名無しさん
2017/03/22(水) 22:09:21.64ID:Lj+MxEQk547デフォルトの名無しさん
2017/04/05(水) 19:56:28.05ID:xPaGCN9C 保守
548デフォルトの名無しさん
2017/04/06(木) 19:31:30.11ID:rlwdMpi7 転職の為にC#覚えたらVB.NET使う会社だったでござる
549デフォルトの名無しさん
2017/04/06(木) 20:36:44.15ID:wEtvCq9a >>548
おつです
おつです
550デフォルトの名無しさん
2017/04/12(水) 22:53:43.53ID:ozjVA+Qe VB2010で質問です
いくつかのフォームで構成されるフォームアプリケーションを作ろうとしているのですが、プログラムの性質上
複数のフォームにおいて共通した処理を行うことがしばしばあります
そこでそれらの処理に使う変数や関数を特定のフォームかクラスに記述して、各フォームから呼び出して
使おうかと思ったのですが、かなり計算が多いプログラムなだけに呼び出しのオーバーヘッドが気になっています。
そこで知りたいのですが
1. 共通する変数や関数をどこかのフォームやクラスで宣言して、他のフォームから呼び出す
2. 各フォームで同じ名前の変数や関数を宣言してそのフォーム内で使う
上記2つのどちらが性能的には有利なのでしょうか?
もし個々のフォーム内でそれぞれ定義する方が高速なのであれば、コードが重複して無駄ができるのは承知の上で
2の方法を使うのもありかなと思っているのですが・・・
1の方が高速あるいは両者に速度差がないのであれば、コードが読みやすくなるので1のやり方にしたいと思ってます
あまりオブジェクト指向もよく理解できてないのですが教えて貰えると有難いです
いくつかのフォームで構成されるフォームアプリケーションを作ろうとしているのですが、プログラムの性質上
複数のフォームにおいて共通した処理を行うことがしばしばあります
そこでそれらの処理に使う変数や関数を特定のフォームかクラスに記述して、各フォームから呼び出して
使おうかと思ったのですが、かなり計算が多いプログラムなだけに呼び出しのオーバーヘッドが気になっています。
そこで知りたいのですが
1. 共通する変数や関数をどこかのフォームやクラスで宣言して、他のフォームから呼び出す
2. 各フォームで同じ名前の変数や関数を宣言してそのフォーム内で使う
上記2つのどちらが性能的には有利なのでしょうか?
もし個々のフォーム内でそれぞれ定義する方が高速なのであれば、コードが重複して無駄ができるのは承知の上で
2の方法を使うのもありかなと思っているのですが・・・
1の方が高速あるいは両者に速度差がないのであれば、コードが読みやすくなるので1のやり方にしたいと思ってます
あまりオブジェクト指向もよく理解できてないのですが教えて貰えると有難いです
551デフォルトの名無しさん
2017/04/13(木) 00:40:28.65ID:aK+zC0HQ 呼び出しのオーバーヘッドなんか事実上ゼロだよゼロ
ラベルの文字列を書き換える処理とかに比べりゃ地球全体の中の一粒の砂レベルで全く完全に無視できる
ラベルの文字列を書き換える処理とかに比べりゃ地球全体の中の一粒の砂レベルで全く完全に無視できる
552デフォルトの名無しさん
2017/04/13(木) 08:07:04.82ID:ai7IR4kG >>551
どうもです
ベクトルの加減算や回転といった処理を数百回行い、それを1秒あたり1万〜十数万回
ループで繰り返すという処理だったので、呼び出しにある程度オーバーヘッドがあると
性能に影響してくるかなと思ったもので・・・
オーバーヘッドが無視できるレベルなのであれば1でいってみようと思います
どうもです
ベクトルの加減算や回転といった処理を数百回行い、それを1秒あたり1万〜十数万回
ループで繰り返すという処理だったので、呼び出しにある程度オーバーヘッドがあると
性能に影響してくるかなと思ったもので・・・
オーバーヘッドが無視できるレベルなのであれば1でいってみようと思います
553デフォルトの名無しさん
2017/04/13(木) 08:49:18.21ID:aK+zC0HQ 無視できるというか、メソッド呼び出しやフィールドへのアクセスにおいて
クラスを跨るかどうかはオーバーヘッドの大小には直接影響しない
クラスを跨るかどうかはオーバーヘッドの大小には直接影響しない
554デフォルトの名無しさん
2017/04/13(木) 11:17:50.97ID:bkaO+5D1 .NETである時点で相当のオーバーヘッドだからな
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国側が首相答弁の撤回要求、日本側拒否★3 [夜のけいちゃん★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★6 [BFU★]
- 債券・円・株「トリプル安」に…長期金利1.755%まで上昇、円は対ユーロで史上最安値 ★2 [蚤の市★]
- おこめ券 予算約9.5億円のうち約2.4億円が経費(そのうちJAに約1億円支払い) 東京・台東区 [Hitzeschleier★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★6 [ぐれ★]
- 被爆者は「怒りが腹の底から湧いてくる」高市首相“非核三原則見直し報道”に被爆地で懸念や憤りの声《長崎》 [1ゲットロボ★]
- 【立憲岡田】高市早苗、2021年岸田政権に「台湾有事は日本の有事か」と迫っていたwww★2 [237216734]
- 【悲報】ジャップメディア「高市早苗の発言があってもインバウンドは過去最高を更新しているんだが?」 [616817505]
- 【悲報】小野田紀美「何か気に入らないことがあったら威圧する国に依存するのはリスク」脱アメリカ宣言か [769931615]
- ホテル業界、高市のせいで中国から大量キャンセル 「大変厳しい状態。一刻も早い収束を願います」 [271912485]
- んなり放題🍬のお🏡
- おっぱい舐めさせて
