[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 04/08 11:46 / Filesize : 273 KB / Number-of Response : 1029
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ふらっと C#,C♯,C#(初心者用) Part141



1 名前:デフォルトの名無しさん [2018/12/15(土) 11:07:07.89 ID:0aSEF/I+0.net]
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■関連スレ
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part139
https://mevius.5ch.net/test/read.cgi/tech/1538646998/
■コードを貼る場合は↓を使いましょう。
ideone.com/
https://dotnetfiddle.net/

■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
referencesource.microsoft.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured

520 名前:デフォルトの名無しさん mailto:sage [2019/02/03(日) 15:49:56.24 ID:IKDI2S7C0.net]
>>503
入れたときじゃなくて別のタイミングで出したい
順番に保証がないと困る
って場面

521 名前:デフォルトの名無しさん mailto:sage [2019/02/03(日) 15:58:01.30 ID:7GVwTPrN0.net]
ログ出力する時に並び替えるだけで済むのでは?

522 名前:デフォルトの名無しさん mailto:sage [2019/02/03(日) 16:04:15.94 ID:IKDI2S7C0.net]
>>505
どうやって?

523 名前:デフォルトの名無しさん mailto:sage [2019/02/03(日) 16:18:53.59 ID:LOT7/zBp0.net]
つかそれKeyは何なんだよ
それがキー項目である必要あるのか?

524 名前:デフォルトの名無しさん mailto:sage [2019/02/03(日) 17:01:46.98 ID:cLU3XamPa.net]
>>504

dict[key] = value;
mySpecialLogger.Log($"dictに追加したぞ: {key}, {value}");

----

mySpecialLogger.Flush();

525 名前:デフォルトの名無しさん mailto:sage [2019/02/03(日) 17:56:25.94 ID:EhLznF4nM.net]
SortedListやSortedDictionaryでいいだろ

526 名前:デフォルトの名無しさん mailto:sage [2019/02/03(日) 19:21:16.88 ID:ZOlWRYsg0.net]
登録順ならOrderedDictionary

527 名前:デフォルトの名無しさん mailto:sage [2019/02/04(月) 11:39:31.27 ID:2YxD3k7B0.net]
>>501
できました、ありがとうございました
IDXGIOutput::WaitForVBlankは呼び出すまでがよくわからないし
P/Invokeだけでできるのかもわからないのでやめておきます

528 名前:デフォルトの名無しさん mailto:sage [2019/02/04(月) 13:36:44.96 ID:AKeTBC2ia.net]
ReadOnly=trueのテキストボックスをクリックしてしまった時に
フォーカス映ってカーソルがチカチカしないようにしたいのですがプロパティ上で設定できないのでしょうか?



529 名前:デフォルトの名無しさん mailto:sage [2019/02/04(月) 13:48:21.68 ID:B1LZYLJj0.net]
GotFocusのたびにWindowsAPIのHideCaretの呼び出しが必要じゃないかな

530 名前:デフォルトの名無しさん mailto:sage [2019/02/04(月) 14:07:22.27 ID:/rUNKcNUa.net]
>>512
コピーを想定してそうなってるので、TextBoxを使うならその仕様は買えない方がよいのでは。
コピーなんかできなくてもいいなら素直にLabelを使いましょう。
BorderStyleやBackColorをいじればTextBoxに近い外見にも出来る

531 名前:デフォルトの名無しさん mailto:sage [2019/02/04(月) 15:54:30.95 ID:AKeTBC2ia.net]
テキストボックスの上に後付けでボタン配置したので、ポインタずれて押しそこなった時にそんな感じになってしまったのです
まあ動作的にはなんの問題もないのではあるけど>>513のイベントハンドラ作ってみます
ありがとうございました

532 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 08:55:05.54 ID:3J1ruy+d0.net]
rar5をオンメモリで解凍、ストリーム取得できるライブラリは無いですか?

533 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 10:59:50.41 ID:svez8hxC0.net]
>>516
sharpcompressでそれっぽいことできてるな

https://www.nuget.org/packages/sharpcompress
https://github.com/adamhathcock/sharpcompress/blob/master/tests/SharpCompress.Test/Rar/RarReaderTests.cs

534 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 11:07:59.15 ID:svez8hxC0.net]
すまんrar5は未対応みたいなこと言ってるわ

535 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 11:21:25.96 ID:svez8hxC0.net]
ほんならこっち
7z.dllのラッパー
https://www.nuget.org/packages/SevenZipExtractor/
https://github.com/adoconnection/SevenZipExtractor/blob/master/README.md

536 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 12:48:55.07 ID:cT2SE72s0.net]
web上の画像をダウンロードせずに
高さと幅を取得する方法があれば教えてください

537 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 13:03:57.50 ID:GPC4C0Pm0.net]
電話で聞く

538 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 13:37:05.03 ID:RjbzZp8x0.net]
>>520
先頭だけ取得して解析するくらいが関の山じゃない?
https://developer.mozilla.org/ja/docs/Web/HTTP/Range_requests



539 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 15:25:13.53 ID:cT2SE72s0.net]
>>522
ありがとうございました

540 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 15:40:50.37 ID:3J1ruy+d0.net]
>>519

541 名前:
回答ありがとうございます。

SevenZipExtractorですが、プロジェクトにNugetで取り込んでも正常に認識してくれず使えませんでした。
SharpCompressですが、(まだファイルの一覧だけしか試していませんが)RAR5での圧縮ファイルを扱えました。
SharpCompressは前に使っていたことがあるので(当時はRAR5が使えなかった)、こちらを使おうと思います。
[]
[ここ壊れてます]

542 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 17:04:13.00 ID:CPjaAgWSM.net]
vs2013なんですけど、バーコードを作るメジャーな方法って何があるでしょうか?無料がいいです。

543 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 17:23:07.87 ID:jB1piIf60.net]
無料ならGPLv3でもええんか

544 名前:デフォルトの名無しさん [2019/02/05(火) 17:28:38.13 ID:dQJUt0gZF.net]
ライブラリいっぱいあるで

545 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 18:20:58.39 ID:C5l7MRqld.net]
>>525
メジャーなのはZXing

546 名前:デフォルトの名無しさん mailto:sage [2019/02/05(火) 21:05:22.94 ID:XsUhL+1b0.net]
何かライブラリ無いかなと思ったらまずNuGet見てみる

547 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 12:34:37.03 ID:ymLQaaTBd.net]
C#で書いたコードをVBAから呼び出す際のC#でのやり方を教えてください。

例えば、MessageBoxで「Hello!」と表示するには何をどうすれば出来ますか?
使ってるのはVisualStudio2017です。

548 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 12:38:03.13 ID:ymLQaaTBd.net]
>>530
引数でHelloを持ちかえる方法です。



549 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 13:05:34.43 ID:pq3DhSMgM.net]
日本語でOK!

550 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 13:11:17.81 ID:/72vyC150.net]
>>530
ググレカス

C#で実装したコードをVBAとかVBから使う方法 : 実験ぶろぐ(仮)試供品
https://needtec.exblog.jp/21522702/

551 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 16:15:23.61 ID:sqv9vum40.net]
https://gist.github.com/katabamisan/5231237

上記サイトのIniFileクラスでBufferExpandingSizeを小さくしてから
GetSectionNamesを呼び出すとループ2回目のGetPrivateProfileString呼び出しのタイミングで
例外も発生せずにプログラムが異常終了してしまうのですが何が問題なんでしょうか?

552 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 18:20:24.61 ID:ymLQaaTBd.net]
>>533
書いてるコードの意味がよくわからないので単純なコードが知りたいんです。

553 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 18:30:37.80 ID:1DcU3Gnhp.net]
コードコピペして自分の使ってるクラスに直せば出来ると思うけど
インターフェース作ってなければクラスから作って置き換えればサンプルコード通りに動くはず

554 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 18:54:31.06 ID:cXGNS95ra.net]
>>535
C# メインルーチンからメッセージボックスを表示
VBA shellを使って↑を起動

555 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 21:20:24.24 ID:SSakxrcH0.net]
>>534
GetPrivateProfileStringの定義がCharSet.Unicode指定してるから
第5引数のnSizeはwchar_tの個数を指すことになる
wchar_tは2バイトだからnSizeに16指定したらlpReturnedStringは32バイトあることになる
でも実際にはその半分の16バイトしか確保してないから
GetPrivateProfileStringが17バイト目以降に書き込もうとしてヒープ破損する

556 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 10:39:20.42 ID:BTY8+ybz0.net]
>>538
文字セットのことがすっかり頭から抜けてました
WinAPIを使うなら真っ先に気を付けないといけない部分なのになあ

・ReAllocCoTaskMemで確保するサイズをlength*2に

557 名前:変更
・GetPrivateStringのCharSetをAnsiに変更、文字列への変換をPtrToStringAnsiに変更

上記2通りの修正でどちらも正常動作することが確認できました
回答ありがとうございました
[]
[ここ壊れてます]

558 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 18:21:29.96 ID:yK9ubdQXd.net]
VS2017使用。
ADOを使ってエクセルのシート名を読んだりセルのデータを読み取りたい。
対象エクセルブックは〇〇.xlsのみ

ネットのサンプルコードをコピペして使ってもエラーでさっぱりです。
何かインストールが必要なんですか?それとも参照設定とか必要なんですかね?

なんか雛形のコードでもあればいただけませんか?



559 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 19:01:48.27 ID:l2uiBAtS0.net]
具体的にどのサイトのコードを試したら
どんなエラーメッセージが出たのかを書いてくれ

560 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 19:28:54.09 ID:yK9ubdQXd.net]
https://qiita.com/OneK/items/c3077aea595635f40ee5
このサイトの下のコードです。

adp.Fill(dt);←ここでエラーです。

return dt;
}

今パソコンから離れたのでエラー内容は忘れましたが何かがないぞみたいな感じでした。

561 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 20:24:29.71 ID:3NiqE0/P0.net]
>>540
https://csharp.keicode.com/topics/how-to-use-exceldatareader.php
これじゃあかんの?

562 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 21:34:46.19 ID:FLUWNW3J0.net]
>>543
これも明日試してみます。
でもいろいろとコードの引き出しがあったらいいなって

563 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 21:37:56.26 ID:FLUWNW3J0.net]
>>543
速度はどうなんですか?早いですか?

564 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 22:02:28.76 ID:O0GaOve00.net]
>>545
ウゼェ、やる気がねーなら
エロゲでもやってろ

565 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 22:23:39.18 ID:iyj2o48P0.net]
こんばんはよければ教えてください
c#で社内用のソフトをしこしこ作っているものなのですが、同じ境遇の方ヘルプファイルはどの形式で
作っていますか? chmファイルは今時便利なツールもないので作りにくいのですが、pdfではなんか味気ない

今回新たなソフトを社内でリリースするので悩んでいます。

あ、ちっちゃい会社です。

566 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 22:28:55.73 ID:CKGjxJfq0.net]
もしかしてc#全く関係ない話?

567 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 22:35:04.98 ID:VZhzokSX0.net]
> pdfではなんか味気ない

その謎の価値観を改めればすべて解決です

568 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 23:39:26.83 ID:Q7Nq6LQdd.net]
>>547
sandcastleでchmやHTMLのヘルプを簡単に生成できるよ



569 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 23:40:23.99 ID:Q7Nq6LQdd.net]
>>548
C#のコメントからヘルプを生成する話だよ

570 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 23:47:55.01 ID:O0GaOve00.net]
doxygen的なのって新しいの出た?

571 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 00:00:34.72 ID:JeOi55qM0.net]
sandcastleなつかしい

572 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 00:09:17.11 ID:yxq5pHtX0.net]
>>553
今でもメンテしてる人いるし!
https://github.com/EWSoftware/SHFB

573 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 00:42:26.66 ID:zMW+eOHy0.net]
markdownで書いてhtml出力

574 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 00:59:36.44 ID:wLiZux8Md.net]
>>555
ソースコードから生成しないのは非効率でしょ

575 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 01:02:48.69 ID:kZW3St4e0.net]
ソースコードから設計書出すならわかるけど、今回の質問はヘルプファイルでしょ?

576 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 01:18:59.44 ID:e7pcoQvna.net]
社内ならConfluenceみたいなwiki的なサービス使えば?
ファイルで配ると後でメンテに苦労することになるよ

577 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 01:22:13.31 ID:yxq5pHtX0.net]
>>557
C#のスレなんだからヘルプと言えばクラスリファレンスだろ

578 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 01:45:40.32 ID:NCJ1sppLp.net]
ユーザー向けのヘルプファイルだろ
質問した本人出てこないから結論出ないけど



579 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 06:02:12.24 ID:86VvLP3ma.net]
簡単なゲーム作ってみたのだけど仮にこれを配布するとしたら
動作環境は何を基準にして明記したらいいのでしょうか

Windowsの人なら特になにか入れてもらわなくてもだいたい動くってことでしょうか

580 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 07:19:45.32 ID:en2thcC6M.net]
>>555に一票
俺はAsciiDocだけど

581 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 07:20:35.11 ID:Weq4zX9xd.net]
対処にした.netでしょう。

win7はデフォだと3.5
win8がデフォだと4.5
win10はデフォ4.6がはいってる。
win8とwin10は3.5系はデフォでは入ってない。
一般的には、4.5で作っておけばトラブルは少ない。
async awaitも使えるし、入ってることが期待できる。

.net coreは開発者でないと、入れてることは期待できないので、入れてもらう形かね。
一般の非開発者は、.net framework と .net coreの二系統に大きく別れてるとか
知らないので、coreは注意が必要かもねぇ

582 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 07:33:47.03 ID:JXgoNARF0.net]
むしろCoreはランタイムをSelf-containedにできるから実行環境の状況を気にせず済むでしょ
(まだデスクトップアプリの開発環境として整ってるとは言えないけどそれはそれ)

583 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 07:37:27.34 ID:N+zrhIiBd.net]
>>563
4.5はもうサポート切れだからだめやろ

584 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 14:02:16.37 ID:wLzz2paeM.net]
今更新規でFull .NET使うのはお勧めできないな
結局.NET standardはMSが早くも投げ出して崩壊し、今後は.NET Coreに一本化される
既存の.NETアプリは全てレガシーの産廃だ

585 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 14:09:17.61 ID:N+zrhIiBd.net]
>>566
ASP.NET Coreも、3.0からは.NET StandardじゃなくてCore3.0だけをターゲットにするしねw

586 名前:デフォルトの名無しさん [2019/02/08(金) 16:42:05.01 ID:DCBa2RJt0.net]
指定のdatetimeまで待つ処理はどのように書けばよいでしょうか?
GUIアプリケーションで出来れば待っている間も操作可能
なるべくcpuの負担が軽くなる方法が良いです
よろしくお願い致します。

587 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 16:47:22.48 ID:xI0+6qTx0.net]
>>568
それは、まず、タイマーを起動して、1秒間に一回程度、自前の関数が
呼び出されるようにしておく。そして、その自前の関数で現在の日時を
取得して、条件に合う日時になっているか調べる。そして、条件に合って
いれば、好きな処理をする。そうすればいい。

588 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 16:58:08.14 ID:hTn4Mfg30.net]
>>569
Thread.Sleepの方がいいんじゃね?



589 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 17:08:32.00 ID:wLzz2paeM.net]
>>568
タスクスケジューラ

590 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 17:20:02.58 ID:xI0+6qTx0.net]
>>570
それだと GUI の処理がほぼ完全に止まってしまい、アプリがほとんど操作不能
になるハズ。

591 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 17:23:59.58 ID:T5iT/olM0.net]
>>568
アプリが起動しっぱなしなら指定日時から現在日時を引いて
await Task.Delay()等でタイムアウト待つとか、他は>>571かね

592 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 17:28:55.52 ID:1w1isakW0.net]
do-whileもいいと思う

593 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 17:33:15.83 ID:hTn4Mfg30.net]
>>572
待つロジックをThreadにすればいいだけじゃね?

594 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 17:48:48.00 ID:xI0+6qTx0.net]
マルチ・スレッドというのは、プログラミング経験を沢山積んだ人が使うもので、
非常に原因の特定が難しいバグを引き起こすことがあるので、初心者には
お勧めできない。同期オブジェクトや atomic アクセス、volatile などを
正しく

595 名前:理解してからでないと危険を伴うことがある。

async も独特で複雑なことをやっているので、プログラミング初心者が、何が起きて
いるのかを理解するのは難しい。なんとなく動くかもしれないがうかつに使うのは
やめたほうがいいと思う。
[]
[ここ壊れてます]

596 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 17:50:59.48 ID:xI0+6qTx0.net]
async は、↓のような複雑な control flow になる。
それを全部理解してから出ないと危険。

https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/async/media/navigationtrace.png
https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/async/

597 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 18:11:51.00 ID:JXgoNARF0.net]
GUIちゅーてんだから普通にWinforms/WPFのTimer/DispatcherTimerを紹介すりゃええんでないの
数日間待機させたいとかになるとまた話が違ってくるしもうちょい質問の要件をハッキリさせて欲しいけど

598 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 18:25:10.33 ID:ccTwL3cjM.net]
指定日時後の起動はタスクスケジューラに任せた方が良いと思う
GIU側の仕事はスケジューラヘの登録と指定日時にスケジューラが起動したプロセスとの通信



599 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 18:28:22.25 ID:xI0+6qTx0.net]
C#も汚い言語になってきたなー

600 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 18:32:16.25 ID:xI0+6qTx0.net]
なんか、JavaScript そっくりになってきる。JavaScript は汚いのにな・・・。

601 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 18:49:11.69 ID:5c9t7/Awd.net]
汚いとは?

602 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 18:56:00.90 ID:wLzz2paeM.net]
JavaScriptそっくりもクソも、JavaScriptのasync/awaitはC#が発祥だぞ
それをJavaScriptもPythonもKotlinもそっくりそのまま真似した
汚い機能だと感じる君の感覚は否定しないが、好みは別にして非同期プログラミングのデファクトスタンダードであるのは事実だ

603 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 19:49:11.94 ID:lL88DpXz0.net]
割り込んですまない。
SolrNet を使ったことあるヤツがいたら知恵を貸して欲しい。

SolrNet を使ってこんなことをやってみた。

Startup.Init<[適当なモデルクラス]>( [SolrのサーバーURL] );
var solr = ServiceLocator.Current.GetInstance<ISolrOperations< [適当なモデルクラス] >>();

まあごく当たり前の初期処理なのだが、実行すると2行目の Current の中身が null でヌルポエラーになる。

原因がわからなくてしばらく悩んで、GitHub にあるサンプルコードをダウンロードしてきてコピペしても同じだったのだが、
ダウンロードしたソリューションをビルドして実行するとこの部分を問題なく通過する。
またしばらく悩んで、nuget でダウンロードしてくる SolrNet のバージョンに違いがあることに気がついた。
どうやらバージョンが 0.5 以下だと通過し、それ以降のバージョンだとヌルポエラーになるようだ。

最新のは 1.0.1 だったか、このバージョンで上の部分を通過させるに必要な事はなんだろう。心当たりがあったら教えて欲しい。
0.5 の辺りって、その辺りを境に他のパッケージを参照するようになってるぽいのだけど関係があるだろうか。
これを使えってご指定なんだよな。。

604 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 20:41:31.54 ID:OM4aCJGta.net]
>>568
一応これでできるけど、これがベストかどうかは知らん
private static async Task WaitTillAsync(DateTime dt)
{
  var now = DateTime.Now;
  var span = dt > now ? dt - now : TimeSpan.Zero;
  await Task.Delay(span);
}

private async void button1_Click(object sender, EventArgs e)
{
  await WaitTillAsync(DateTime.Now.AddSeconds(10));
  MessageBox.Show("10秒後にこんにちは");
}

>>566
マジですかw

605 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 2 ]
[ここ壊れてます]

606 名前:1:46:41.47 ID:tTA+g4g80.net mailto: >>585
それだとNTPで時計合わせが発生したらズレる
素直にSystem.Timers.Timerで500ms位ごとにElapsedさせて、
指定時刻を過ぎてないか見るのが簡単。

マイクロ秒まで精度出したいっていうのなら、そもそも使うOS間違ってる。
[]
[ここ壊れてます]

607 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 22:17:53.01 ID:uDI35RTx0.net]
>>583
Rustは結局どうなったんだっけ?

608 名前:デフォルトの名無しさん [2019/02/08(金) 22:27:25.20 ID:DCBa2RJt0.net]
みなさんありがとうございます。
一応自分で書いていたのは>>585さんに近くて設定時刻前ならそのまま、設定時刻を過ぎてたら一日足して現在時刻との差をawait Task.Delayしました。
タイマーの精度はそんなに必要なく1分間隔で大丈夫で、24時間起動で毎日朝8時から夕方17時までプログラムを止めるみたいな感じです。
同じプログラムを大量に起動するので処理はなるべく軽いのが希望で
ループ処理で毎分チェックするようなのは重いイメージがあるのですが大丈夫でしょうか?
また、時計合わせが発生したらズレるというのはどういうことでしょう?



609 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 22:30:54.02 ID:wLzz2paeM.net]
>>588
ポーリングが嫌ならタスクスケジューラを使えばいい
プログラムから簡単に登録できる

610 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 22:53:24.62 ID:OM4aCJGta.net]
>>586
えらい重箱の隅だけどまあそうだねw
private static async Task WaitTillAsync(DateTime dt)
{
  await Task.Run
  (
    () => { while (dt > DateTime.Now) Thread.Sleep(500); }
  );
}

611 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 23:23:03.92 ID:wLzz2paeM.net]
>>590
プロセスが落ちることを想定せよ
NTPなんかより遥かに影響を受ける可能性の高い事象である
やり直し

612 名前:デフォルトの名無しさん [2019/02/08(金) 23:32:28.45 ID:Waqd0NNdr.net]
どのへんでプロセス落ちるの?

613 名前:デフォルトの名無しさん [2019/02/08(金) 23:33:09.16 ID:DCBa2RJt0.net]
>>590
Thread.Sleepの所Task.Delayにしても大丈夫でしょうか?

614 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 23:42:34.81 ID:wLzz2paeM.net]
>>592
どこでも
質問者は24時間起動って言ってるんだから当然想定すべきだよ

615 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 00:44:22.99 ID:jhOjUKEBa.net]
>>593
もちろんいいと思うけど、

() => { while (dt > DateTime.Now) Thread.Sleep(500); }

async () => { while (dt > DateTime.Now) await Task.Delay(500); }

に文字数が増えて、使うTaskも増えて、かといってメリット無いような気が

616 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 00:46:47.47 ID:3dJvh84X0.net]
await, async は、簡単なことを難しくしてしまう。

617 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 00:52:22.81 ID:8aikkfMy0.net]
C#は、もはや、C++やCとは似ても似つかなくなってしまってる。
control flow がめちゃくちゃ複雑で、何をやってるのかわからなくて
生ポインタの1,000倍危険。

618 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 00:58:38.23 ID:jhOjUKEBa.net]
() => { while (dt > DateTime.Now) Task.Delay(500).Wait(); }
の方が素直か。
何かTask.Delay使った方がいい理由ってあるかな



619 名前:デフォルトの名無しさん [2019/02/09(土) 01:13:05.43 ID:dvMZ7Shb0.net]
PDFファイルからテキストを抽出する方法でオススメはありますか?
調べたところiTextSharpとPDFBoxは見つかりましたが、たまに読めないPDFがあるのが残念です。

620 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 01:45:47.26 ID:8aikkfMy0.net]
C# の async, await を開発したのはこんな人。写真付き:

https://www.orioninc.com/c-async-and-await-programming-model-from-scratch-introduction/






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<273KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef