C#, C♯, C#相談室 Part96

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 7633-kUv4)
垢版 |
2021/12/20(月) 11:03:25.88ID:sdn/+VfW0
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512

■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

■コードを貼る場合はこちら
http://ideone.com/

■前スレ
C#, C♯, C#相談室 Part94
https://mevius.5ch.net/test/read.cgi/tech/1553075856/

■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
247デフォルトの名無しさん (ワッチョイ cbba-0R8h)
垢版 |
2022/05/13(金) 22:24:43.10ID:TYJN2jsR0
>>246
自己署名の話を皆様に聞いた理由は、他の人のPCにインストールした際に、不明な発行元と表示されてしまうのを回避したい と言う理由だけなんです。
不明な発行元と警告が出る種類も何パターンかありますよね?
フォームで出るパターン と、ブルースクリーンの様な画面で出るパターン
この両方の警告に対応するには、お金を支払い自己署名するしかないのかなあと漠然と考えてました。

その自分で作成する方法(オレオレ自己署名)も見たのですが、アプリではない感じだったので、、あまり詳しく理解できていません。。
2022/05/13(金) 22:29:59.42ID:cpvIzMAY0
「自己署名」を間違えて理解してるんじゃね?
249デフォルトの名無しさん (ワッチョイ cbba-0R8h)
垢版 |
2022/05/13(金) 22:55:59.91ID:TYJN2jsR0
>>248
もしよろしければ、自己署名についてご教示願えないでしょうか?
なかなかこの辺の記事は書籍で書いてないので。。
2022/05/13(金) 23:18:12.14ID:S8Zs+Y9A0
>>249
調べるべきは「電子署名」であって「自己署名」じゃないぞ
もっと正解に近いキーワードは「コードサイニング証明書」と「MS Authenticode」
2022/05/13(金) 23:41:37.05ID:btyzcX5fa
>>249は認識あってるよ
>>248はたぶん自己署名=オレオレ署名と勘違いしてるだけ
発行してもらった正規のでもオレオレのを使っても自己署名には変わらない

自己署名 =自分でexeに対して電子署名すること
電子署名 =電子的な署名
電子証明書=自己署名やsslなどで必要になるやつ(一般的には公的機関からのものを指すけど、自分で作ったのも含む)
オレオレ証明書 =自分で作った電子証明書
オレオレ署名 =オレオレ証明書を使った電子署名
コードサイニング証明書=電子証明書のうち、exeなどの署名に特化したもの(公的機関から買う。自分で作ったのは汎用的だからこう呼ぶことはない)
自己署名証明書 ≒コードサイニング証明書
2022/05/13(金) 23:59:49.70ID:I/jceGHeM
すごい認識だな
2022/05/14(土) 00:14:27.18ID:3IgnexNy0
>>251
ちょっとその調子で、「自己署名証明書」の定義も教えてくれ
ちなみに>>246での「自己署名」とは「自己署名証明書」の意味で書いてるわけだが

つか、
>>242も自己署名証明書はその定義だと考えてるのかな
2022/05/14(土) 00:31:05.21ID:multK6hC0
あ、オレオレ定義のアウアウウーさんだ
2022/05/14(土) 00:45:49.42ID:q1SIpySda
自己署名証明書、自己署名、電子署名っての自体はオレオレ署名とまともな署名のどっちに使っても問題ない
だから自己署名=オレオレだと決めつけて解釈していくとあらぬ方向に行くんだよ

>>246は「勝手に作る」というような言葉が使われてるからオレオレ証明書のことだと分かるし
>>242は発行元不明を防ぎたいという文脈から公的な証明書のことだと分かる
2022/05/14(土) 01:12:09.43ID:3IgnexNy0
>>255
つまりお前は自己署名証明書での署名も「まともな署名」としてあつかうんだな
2022/05/14(土) 01:17:06.48ID:YyWH0a110
>>251
アプリの発行にあたって必要なのは自己証明書じゃなくて信頼できる認証局から発行された証明書。
自分がその認証局自身でない限り自己証明書にはならない。
2022/05/14(土) 01:23:01.16ID:YyWH0a110
>自己署名 =自分でexeに対して電子署名すること

なんだこれ?こんな用法見たことない。
2022/05/14(土) 01:40:53.18ID:41BaXtRu0
>>251,255
その出鱈目どこで覚えた?
字面から想像しただけかな

https://e-words.jp/w/%E8%87%AA%E5%B7%B1%E7%BD%B2%E5%90%8D%E8%A8%BC%E6%98%8E%E6%9B%B8.html
2022/05/14(土) 10:41:44.00ID:XXC0KMFKM
>>251,255みたいなのは
相手がビギナーや若手だと見るや嬉々としてデマカセを吹き込んでほくそ笑むタイプなんでしょ
本人はやってて楽しいのかもしれないけど傍から見てるとひどく滑稽
261デフォルトの名無しさん (ワッチョイ 3133-Q+cg)
垢版 |
2022/05/14(土) 21:16:53.25ID:D+nf+blC0
C#って移植性は高いんですか?入門書をのぞいてみたけどGUIの項目ではWindows限定でした
262デフォルトの名無しさん (ワッチョイ abba-tmIb)
垢版 |
2022/05/14(土) 23:51:51.56ID:6ACM/5dE0
242 の質問者です。
僕の質問が悪かったせいで、少し雰囲気を悪くさせてしまった様で申し訳ありませんでした。

改めて質問させてください。

コードサイニング証明書の取得はどこが1番、費用が安いでしょうか?
聞くだけではダメなので、自分でもネットで調べてみました。
個人的にてはありますが、海外のECサイトで、1年で99ドルというものもありました。

ttps://blog.katsubemakito.net/articles/buy-comodo-codesigning

日本だと、1年で2万円が最安値?と認識してます。
2022/05/15(日) 00:04:11.57ID:tGTiPFBf0
それ、そんなに必要なものか?
ネットに転がってるフリーソフト使ってたらガンガン出るけど
2022/05/15(日) 00:06:57.20ID:tGTiPFBf0
そもそも海外のよくわかんねー機関に金積んで得られるものに何の信用があるのよ?
2022/05/15(日) 00:26:37.67ID:Ipi6C5sV0
WIndowsで使えるってことはMSがその認証機関を信用してるってこと
認証機関がいい加減な仕事をして信用を失うとそこのルート証明書が無効化される
2022/05/15(日) 00:57:30.11ID:ZqvBN/g40
圧倒的に安いのはMSのWindowsStore
費用は大体2000円ぐらいで生涯使えるし、一つのアカウントを使い続けるならアプリは何本でも追加費用は取られない
問題はUWP,WinUI3で作るか、WpfやWinFormsならMSIX形式のインストーラに変更することとMSの審査があるのでそれを通さないといけないこと
Windows10仕様のアイコンも作らないといけない
267デフォルトの名無しさん (ワッチョイ efd2-ydBh)
垢版 |
2022/05/15(日) 00:58:59.47ID:LE0M373c0
便乗して質問だけどこういう認証ってのは
配布するインストーラのバイナリが「改竄されていない」、「配布元が会社名 CO LTD.を名乗る権利がある」ってのを保証してくれるだけ?

保証元として信用するのはデフォルトではMicrosoft(かMicrosoftが認証してる保証会社)だけって認識だけど
2022/05/15(日) 01:38:10.49ID:Ipi6C5sV0
>>267
「配布元が会社名 CO LTD.を名乗る権利がある」じゃなくて「アプリの配布元(がなりすましされていないこと)」の保証だね

個人でも取得できるコードサイニング証明書は無条件にはMSに信用されてなくて最初の内はSmartScreenが表示される(らしい)
法人しか取得できないEVコードサイニング証明書なら最初からSmartScreenは表示されない
後者は法人の存在確認が定期的にあったりより厳密
2022/05/15(日) 01:38:43.97ID:Ipi6C5sV0
厳密じゃなくて厳格か
2022/05/15(日) 03:02:38.88ID:tGTiPFBf0
成りすまし/改ざん防止なら最近添えるのが流行りのpgpとかで十分なんじゃないの、何か悪い事が起きても俺じゃなくて他人が手を加えたせいだ、という証明にはなるから自己防衛には十分だろ

逆に言えば何かあったら言い逃れできないけど、認証機関を介さないが故に個人情報とは切り離せるわけで、トンズラも可能

書き手にとってはとても都合がいい
2022/05/15(日) 10:26:11.54ID:Ipi6C5sV0
>>270
目的が変わってるぞw
元はUACやSmartScreenで発行元不明って表示されないようにしたいって話
PGPはWindowsが対応していないからそれには役に立たない
2022/05/15(日) 15:14:46.24ID:F+SXCyPNM
サイン証明って実はリソース部分書き換えてもついたままなをだよな。
2022/05/15(日) 21:35:20.30ID:9FqWYCkM0
リソースってのはCOFF的には只の特殊セグメントなんでな
更に、ユーザー定義リソースってどんなデーターでも
格納出来る形式があってだな、we留守の格納に...おや誰か来たようだ
2022/05/16(月) 06:56:14.67ID:6t2iMJ0O0
SmartScreenの警告はダウンロードしたときに
「ファイル名:Zone.Identifier」が勝手に作成されて起動時にチェックしてる
275デフォルトの名無しさん (ワッチョイ 27e6-hFP2)
垢版 |
2022/05/17(火) 22:43:59.32ID:U++gJ6eR0
TreeViewとかListViewの使い方が載っている本を教えてください。
2022/05/17(火) 22:55:59.31ID:vPKF91U40
>>231-234
遅くなりましたけどありがとうございました。もう時間も迫ってきたし色々と諦めてコードビハインドに書いてます。
ただそれでも色々と勝手が違って苦戦していますが……WPF難しすぎる……
2022/05/17(火) 23:41:38.48ID:C7nZqj5bM
>>275
本は無駄

検索したほうがいい
どうしても分からなかったら英語で質問
2022/05/18(水) 00:14:57.64ID:2qQDAoA/0
>>275
Windows95ユーザーインターフェイスプログラミング

ナンシークラッツ本
279デフォルトの名無しさん (ワッチョイ 27e6-hFP2)
垢版 |
2022/05/18(水) 21:10:13.07ID:dKdqkOyw0
>>277 >>278
ありがとうございます。

今から勉強しているので必要になりました。
週末、本屋さんに行ってきます。
2022/05/18(水) 21:31:33.31ID:diUTiqLR0
nLogは5.0からdatabase名前空間のパッケージが独立した
破壊的変更の場合はもう少しわかりやすいところに変更書いてくれよ

nlog.databaseを追加すりゃいいだけなんだけどさ
2022/05/18(水) 21:35:57.04ID:iR7wkq9I0
>>279
本屋さんにこの手の専門書はほぼないだろうなぁ
2022/05/18(水) 23:44:43.59ID:5wqn8ALkM
本には詳しい説明は書いてないのでやりたいことを検索窓に突っ込んだ方がまし

listview databinding item 幅いっぱいとかw
2022/05/19(木) 00:15:57.29ID:uGnwJzVO0
NLogお世話になってます
284デフォルトの名無しさん (ワッチョイ 27e6-hFP2)
垢版 |
2022/05/19(木) 23:10:43.67ID:VcSHhdY40
Windows95の時代にC#があったかな。
2022/05/20(金) 00:57:04.11ID:R6FV90Kc0
相談です。
ランチャーを作りたいなと思い起動時は非表示(非アクティブ)に
何かのキーを押されたら表示したいのです。
アプリが非アクティブの時でもキーボードの入力イベントを取得する方法は無いでしょうか?
2022/05/20(金) 01:34:48.57ID:eaUqMOJr0
>>285
グローバルフック
2022/05/21(土) 02:00:44.14ID:pmnVOflo0
>>286
サンクス!

WPFで作ってるんだけどグローバルフックを調べて組み込んでみました。
MainWindowをHideするとグローバルフックが効かなくなるので
MainWindowは描画をせずグローバルフックを動かして、
子WindowにWindowを描画してHide/Showするようにしたらなんとか形になりました。
こんなのでいいのかなんだかすっきりせず。
2022/05/21(土) 10:29:06.89ID:XiDxIIx00
>>287
なんでだろ?メインウィンドウからフック仕掛けてる?
Formsの頃の記憶だけど、Application.run以前にSingletonな管理クラス作ってやってた。
そいつからイベント送られてくるようにしてたよ。
それで問題なかったはずだけど、なんか変わったんのかな。
289デフォルトの名無しさん (ワッチョイ 8b01-H9jD)
垢版 |
2022/05/21(土) 14:05:38.07ID:2Lltosx/0
以前HotKeyで作ったけど中身はグローバルフックなんかな
2022/05/21(土) 15:40:41.47ID:4jCCGHc40
Utf8Parser.TryParse(span, out DateTime date, out _, 'O')について聞きたいんだけど、以下の文字列はUtf8Bytesとして
"2022-01-01T00:00:00.0000000Z" ← 28文字のこれなら正常に成功するのに
"2022-01-01T00:00:00.000000Z" ← 27文字のこっちは失敗する

DateTime.TryParseなら後者も成功するんだけどこれはUtf8Parserがポンコツってこと?
それともDateTime.TryParseがオーバー解析してくれてるだけで28文字未満の"O"形式のDateTime投げてくる方が非常識?
2022/05/21(土) 15:55:42.97ID:cfNQUnEf0
>>290
https://github.com/dotnet/runtime/blob/57bfe474518ab5b7cfe6bf7424a79ce3af9d6657/src/libraries/System.Private.CoreLib/src/System/Buffers/Text/Utf8Parser/Utf8Parser.Date.O.cs#L175
27文字目は数字以外だとエラーになるっぽいね
2022/05/21(土) 16:15:24.74ID:ec9yQBCj0
>>290
失敗しても仕様の範囲内ぽい

> ラウンドトリップ ("O"、"o") 書式指定子
> "O" または "o" 標準書式指定子は、DateTime 値の "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK" カスタム書式指定文字列と
> DateTimeOffset 値の "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffzzz" カスタム書式指定文字列に対応します。
293sage (ワッチョイ cebb-8jyA)
垢版 |
2022/05/21(土) 16:43:22.42ID:0fNBsESd0
27文字のが来る状況あるんだっけ?
2022/05/21(土) 18:38:40.30ID:hT1fnPAH0
>>288
レスありがとう!
MainWindowからフックしています。
シングルトンにはしてないですが、MainWindowは生きているので、
フック自体は破棄されていませんが、どうもダメでした・・・
2022/05/21(土) 21:45:54.24ID:8HM5gfhu0
>>285
特定のキーで表示ならSystem.Timers.Timer使ってGetKeyStateとかでキー入力監視
キーがヒットしたらタイマー止めて目的のウィンドウを表示
ずっと監視するのが嫌でなければ実装はかなり楽な方かと
アプリランチャーならタスクトレイに格納してマウスクリックで表示させての方が使いやすい気がするけど
2022/05/22(日) 01:09:06.35ID:7HW4nX7o0
RawInputでいいんじゃね
2022/05/22(日) 01:44:20.92ID:xpEgvjj30
>>285 です

>>288 さんの
>Application.run以前に
というのをヒントに、WPFなのでrun()は無いけど、Appにコンストラクタを記載しその中でフックを起動して、
キーダウンのイベント内でMainWindowを取得し制御する事で上手く行きました!
その他手法含めご教授してくださった方々有難うございます!
2022/05/22(日) 09:35:29.30ID:gmOf9ICx0
>>291-293
現状だと28文字未満だったらUtf16に変換してDateTimeの方でやるしかないか
そこそこ知られてるWebサービスのAPIがたまに桁詰められて27文字の投げてくるんだよね
2022/05/22(日) 10:21:24.48ID:GyF0oANxM
悪いけど、Webのレスポンスだったら最初から全部UTF16でやっても全くパフォーマンス変わらないと思うよ
2022/05/22(日) 11:48:59.69ID:gmOf9ICx0
>>299
そんな大きなペナルティがあるとは思ってないけど全く変わらないというのはどういう原理で?
JsonDocument.Parse(response.Content.ReadAsStream())みたいな感じでやってるけど、これだとUtf8のままパースされてるよね
2022/05/22(日) 15:34:34.14ID:Nn/6kHB8d
用途次第じゃない?
HTTPSの通信に比べればJSONのデコードなんか誤差だから単一の処理で見るなら全く意味ないだろうけど、
もし大量のリクエストを捌くサーバーを作っているならCPUやメモリの使用率を削減することでサーバーのインスタンス数を削減できるかもしれない
2022/05/22(日) 16:53:52.96ID:7HW4nX7o0
そこまでシビアなら、他にもっと先に見直す所があると思うけど
2022/05/29(日) 18:01:05.65ID:Gx8AtDBv0
WindowsFormはそれなりに少し経験はあるんですが行き詰まっているので相談です

centos7にapach上で、これまでhttpd.confにAliasで特定のドキュメントルーツを設定して
phpでつくったWebアプリをいくつか動かしている環境があり、ここに新たに
Blazorサーバやってみようと、dotnetインストールしてrunまではできてます
(配置したdllを実行するserviceをつくってそれも起動可能な状態)

phpでつくったアプリのようにAliasで簡単にできるかなと思ってたらそうでもなく
サイトググるとVirtualHostの例がちらほら

example.com/app1 ・・・ var/www/app1 にphpアプリ配置
example.com/app2 ・・・var/www/app2 にphpアプリ配置
example.com/blazor を新たに配置するにはどの辺調べればいいですかね
MSのドキュメントやBlazorや先日でたNET6の書籍とか見ながらいろいろやってはみたものの
どれもうまくいかず、行き詰まっております(方向性を見失ってます)
リクエストきたものをkestrelに渡してやらなきゃいけないってのはなんとなく理解してますが
VirtualHostとリバースプロキシをきちんと理解しないでできないですかね
2022/05/29(日) 18:02:59.94ID:Gx8AtDBv0
ドキュメントルーツ・・・ドキュメントルートです
すみません
2022/05/29(日) 19:36:38.11ID:kVtoPC2XM
IISでホストしてApache側でVirtualHostの指定でリバースプロキシすりゃいいよ
頭悪い構成だが、その調子だとリバースプロキシの設定はなんとかなってもどうせdotnetアプリを常時起動する方法が見当つかないんだろ?
2022/05/29(日) 20:08:21.68ID:DRuRn6I70
>>303
リバースプロキシ使用時はhttps使わない構成にしなきゃダメだぞ
2022/05/29(日) 20:15:46.80ID:1ETRcw7wM
>>303
すでにデーモンとして動かしてるならリバースプロキシするだけ
ググって適当にコピペでまあいける
本番だったらちゃんと理解してやったほうがいいと思うけど
2022/05/30(月) 04:15:11.38ID:JkhndRSZa
数か月ぶりでここ覗いてみたけどまだ結構人がいるみたいでちょっと安心したw

以前は旧FireFoxのChaikaってアドオンをだましだまし使ってたんだが、(それがいよいよ
使えなくなったのが来なくなった理由)今回JaneStyleを入れてみたが、作者さんを批判する訳じゃないが、
UIは25年前のWin98時代のものだし鬱陶しいエロ広告は表示されるし結構萎えるなこれ

C#といっこも関係ない話題ですまん
2022/05/30(月) 08:09:38.08ID:n9/aIkj20
みなさんレスありがとうございます

>>305
serviceつくって常時起動はできてるかなと思います
>>306 >>307
稼働WEBサーバはhttpsのみなので、ってことは今の構成でそのままっていかないんですね
(Rewriteでhttpをhttpsにしている)
ネットの設定例にある、http://localhost~; をhttpsにしていましたが

ネットで見つけられた設定例って、そのサーバの全アクセスをリバースプロキシさせるようなものがほとんどで
自ドメインの特定のアドレス(上でいう、example.com/blazor)だけを
リバースプロキシさせてdotnetが受け取れるようにってできないもんでしょうか?
できるということであれば、どうにかして調べます

バーチャルホストは複数のドメインを扱ってて、Aliasは同じドメインで複数のドキュメントルートを扱えると
考えているので、やりたいことはバーチャルホストでできないんじゃないかなと思ってるんですが
サブドメインにしちゃえば1つのドメインでもやれますかね
2022/05/30(月) 08:44:27.76ID:terzLTfjM
できるよ
2022/05/30(月) 14:27:32.28ID:rKCebS3v0
>>310
ありがとうございます

後者の方はhttpでうまくできました
ただ、実際はユーザーからhttpsでつながせたいのですが
証明書がないのでブラウザで開いても動作確認できず
メインドメインのSSL証明書だと、ワイルドカードだと割高なのでドメインを
追加するしかないかなと思うのですが、
VirtualHostの設定内に取得した証明書の設定書いてやれば
httpsで動作させることができると考えてもいいんでしょうか?
下みたいな感じで。前者の方ならそんな手間も費用もいらないんでしょうが、方法がみつからない

<VirtualHost *:443>
ServerName hoge.example.com
ProxyPreserveHost On
ProxyPass / https://localhost:5001/
ProxyPassReverse / https://localhost:5001/
RewriteEngine on
RewriteCond %{HTTPS} on
RewriteCond %{HTTPS:UPGRADE} ^WebSocket$ [NC]
RewriteCond %{HTTPS:CONNECTION} Upgrade$ [NC]
RewriteRule /(.*) ws://127.0.0.1:5001/$1 [P]
2022/05/30(月) 14:30:41.80ID:rKCebS3v0
SSL部分書き忘れましたが、書き方は省略します

SSLEngine on
SSLCertificateFile [crtのパス]~~以下略
2022/05/30(月) 15:23:01.71ID:/JK2MYXZ0
俺はPHPも使えるんだぜ
すげーなおれ
2022/05/30(月) 16:31:04.22ID:rKCebS3v0
>>311はいちど撤回します

Program.csでapp.UseHttpsRedirection()が抜けてたのでそれを加えつつ
前者の方をLocationでなんとかhttpsでの表示までたどり着きましたが
どうも完全な動作をしてない様子です
(Blazorの学習用のテンプレートでメニューやテキストだけだけ羅列された状態)

<Location "/blazor">
ProxyPreserveHost On
ProxyPass http://localhost:5000/
ProxyPassReverse http://localhost:5000/
RewriteEngine on
RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
RewriteCond %{HTTP:CONNECTION} Upgrade$ [NC]
RewriteRule /(.*) ws://127.0.0.1:5000/$1 [P]
</Location>
もう一息な感じなんですが・・・
2022/05/30(月) 19:40:46.77ID:n9/aIkj20
解決しました
サーバー側でなく、ソース側の修正で表示できました
2022/06/18(土) 22:52:15.42ID:5N4YYnEs0
古い話題で恐縮なんですが質問です。
https://docs.microsoft.com/ja-jp/dotnet/standard/asynchronous-programming-patterns/calling-synchronous-methods-asynchronously#executing-a-callback-method-when-an-asynchronous-call-completes

IAsyncResult result = caller.BeginInvoke(3000,
out dummy,
new AsyncCallback(CallbackMethod),
"The call executed on thread {0}, with return value \"{1}\".");

begininvokeで呼び出されたのが終わるとき、callbackmethodが呼び出されることまではわかりました。
2022/06/18(土) 22:53:28.07ID:5N4YYnEs0
途中送信すみません。

callbackmethodを見ると引数にIAsyncResult arとありますが、これはどこから来たものでしょうか?
begininvokeでは呼び出す関数を指定してはいますが、その関数に渡す引数は指定していないように見えます。

よろしくお願いします。
2022/06/19(日) 00:17:36.07ID:TrF8/kJeM
https://docs.microsoft.com/ja-jp/dotnet/api/system.asynccallback?view=net-6.0
のとおり、AsyncCallbackは
「public delegate void AsyncCallback(IAsyncResult ar);」
と定義されてるデリゲートだけど・・・?
2022/06/19(日) 01:35:57.45ID:NHHRNcNt0
関数ポインタというか関数オブジェクト
2022/06/19(日) 08:04:27.42ID:Nk1h87ob0
>>317
> callbackmethodを見ると引数にIAsyncResult arとありますが、これはどこから来たものでしょうか?
.NET側で作成して必要な情報をセットしてCallbackMethodを呼び出すようになってるだけだよ
2022/06/19(日) 10:47:43.19ID:O3VLYjye0
>>318
あーいやですからcallbackmethodが実行されるときの引数arはどこにあるのかという話で

>>320
引数は勝手に.NET側が指定してくれるということでしょうか
2022/06/19(日) 10:52:20.66ID:nWWcJPGW0
セグメント的な意味ならスタックじゃね?
2022/06/19(日) 11:41:03.45ID:7K+FVRoS0
この質問の的はずれな感じ初心者だろうからこっち行け
https://mevius.5ch.net/test/read.cgi/tech/1655422932/l50
2022/06/19(日) 12:21:28.04ID:+YnI+5A8a
あなたの心の中にあるよ
2022/06/19(日) 14:14:38.43ID:YZZ11uFp0
CのDLLから呼び出し規約cdeclのコールバック用の関数ポインタを要求された場合、
C#のデリゲートを受け渡し出来る方法、もしくはC#側でcdeclの関数を作る方法はありますか?
2022/06/19(日) 15:01:29.91ID:mFXr9uBN0
GetFunctionPointerの説明にはDelegateの定義にUnmanagedFunctionPointerAttributeをつけるとCallingConventionを制御できると書いてある
2022/06/19(日) 15:23:57.91ID:YZZ11uFp0
なるほど、属性で指定するんですね
ちょっと試してみます
2022/06/26(日) 10:39:56.55ID:UB4e87n30
半角の#は制御文字で
しょうもないバグの要因になるから使いたく無いんだよな
なんで#なんか名前に使ったん?
2022/06/26(日) 10:47:20.23ID:ljaQjS590
C++++って呼べばいいと思うよ
2022/06/26(日) 10:53:50.00ID:mb7mYMEr0
>>328
どういう意味の「制御文字」?制御文字というとふつうは0x00-0x1fを想像してしまうが。
2022/06/26(日) 11:09:18.97ID:4GsWpWI+M
non-alphanumeric
2022/06/26(日) 11:17:43.56ID:NLYG3vIc0
C++はいいのか?
2022/06/29(水) 11:22:11.80ID:rVQ8qMbxd
まあ#よりはマシなのでは
ただしcppって略してc preprocessorと被せるのは許さん
2022/06/29(水) 11:41:40.54ID:B8mpBogv0
どう見ても問題になるのは+の方
正規表現で邪魔になる
2022/06/29(水) 11:54:18.32ID:anfh1Uacr
c+4ってなるよりはマシ、、、
もっといいセンスあったやろなあ今更やが
2022/06/29(水) 20:32:03.37ID:5BRKVkZj0
おジャ魔女どれみ#
2022/06/29(水) 21:36:03.92ID:ZbbkHISNa
しょうがないんだ
あの時代は自称ヒッピーのキモオタ世界だったし、Microsoftはすべての商品名の他に社名までが究極的にゴミクソ脱糞太郎だからな
何が.NETだボケ
2022/06/29(水) 22:13:24.27ID:MHsZYoUcd
マイクロソフトボブおじさんおったよな
339デフォルトの名無しさん (アウアウウー Sad3-7uco)
垢版 |
2022/06/30(木) 08:36:25.96ID:vvnSi9+Ba
csharpでよかったのに
2022/06/30(木) 08:44:23.01ID:mxGmIKrnd
+を四つ組み合わせたんやろ
2022/06/30(木) 09:02:49.53ID:RS+78JOl0
+++だとモデムがコマンドモードに入って具合悪いからな
342デフォルトの名無しさん (アウアウウー Sad3-sbT5)
垢版 |
2022/06/30(木) 11:25:19.25ID:l3rHcZB/a
Cpp って C pre processor のことだろ
343デフォルトの名無しさん (ワッチョイ 3f3e-sii1)
垢版 |
2022/06/30(木) 23:55:35.01ID:yANzD8P40
底辺職業ランキングで c# プログラマが一位を獲得。

底辺職業の条件 3つ

1. 同じことを繰り返す。
for ループつかってるよね。

2. 誰でもできる
スタックオーバーフローを見れば、c#プログラミングなんて誰でもできる。

3. 体力勝負

https://i.imgur.com/0BRVa3M.jpg
c# アプリケーションのビルドが含まれているとのこと。
2022/07/01(金) 02:57:28.78ID:I3o7r2ai0
はえ~最近の生ゴミは掲示板に投稿できるんですね
2022/07/01(金) 15:22:31.26ID:svwhpzKm0
VisualStudio 2015 ターゲットフレームワーク .Net Framework 4.5.2
Shownイベントで発生した例外をApplication.ThreadExceptionでキャッチ
したいのですが期待する例外が届きません。
何が原因なのでしょうか。

public partial class Form1 : Form {
[STAThread] static void Main() {
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.ThreadException += ShowException;
Application.Run(new Form1());
}
private static void ShowException(object sender, ThreadExceptionEventArgs e) {
MessageBox.Show(e.Exception.ToString());
}
private void Test() {
try {
throw new Exception("1 起点");
}
catch (Exception ex) {
throw new Exception("2 期待する例外", ex);
}
}
public Form1() { InitializeComponent(); }
private void Form1_Shown(object sender, EventArgs e) { Test(); } //1が届く
private void button1_Click(object sender, EventArgs e) { Test(); } //2が届く
}
2022/07/01(金) 16:11:44.24ID:3n4aX0eh0
なぜサポート切れのバージョンを…
2022/07/01(金) 20:14:48.14ID:dkEku/by0
古いのを使わないといけないプロジェクトに放り込まれる辛さってあるよね……
客先行ったらvisual studio 2010だと言われたときの絶望
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況