2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

C#, C♯, C#相談室 Part97

1 :デフォルトの名無しさん :2022/12/21(水) 10:18:38.02 ID:DxBIri9+0.net
!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が建てる事。
建てられない場合は他を指定する事。

C#, C♯, C#相談室 Part96
https://mevius.5ch.net/test/read.cgi/tech/1639965805/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

157 :デフォルトの名無しさん :2023/01/23(月) 09:29:38.64 ID:KYv3x0sqM.net
>>156
使えなくなる理由が分からない

ブラウザの話?

158 :デフォルトの名無しさん :2023/01/23(月) 09:34:41.96 ID:t2EpFVl6a.net
わからないは草

159 :デフォルトの名無しさん (ササクッテロラ Spc7-H1Sa):2023/01/23(月) 10:09:44.77 ID:2/794eE6p.net
>>156
そんなんちゃんと契約書にOSのバージョン指定しとかない会社が悪い
OSバージョンアップされたら何起こるか分からないんだから
最悪作り直しだってあるし、そんなん瑕疵理由にされたらたまらないだろ

160 :デフォルトの名無しさん (ワッチョイ 8307-ycfm):2023/01/23(月) 10:10:26.60 ID:YKh4Yexo0.net
指定したバージョンで使えなけりゃ作り直すしかねーだろ

161 :デフォルトの名無しさん (ワッチョイ 0379-6+E+):2023/01/23(月) 20:40:31.82 ID:N1CH+niL0.net
>>152
神クラス悪くないよな
すべてのグローバル変数がちゃんと集結してるなら
リークはここさえ調べればいいし

162 :デフォルトの名無しさん :2023/01/23(月) 21:22:23.16 ID:3Vu8SA8M0.net
本当にヤバい神クラスというのは担当者が1人じゃなく複数人でメンテしていて、
しかも誰一人として全貌を把握していないという。。。

163 :デフォルトの名無しさん (オッペケ Src7-j0by):2023/01/24(火) 07:57:54.50 ID:qtsatPEhr.net
まあ1人で保守できてて数が把握できるレベルならな。。

164 :デフォルトの名無しさん (ワッチョイ d31d-QR4B):2023/01/24(火) 10:27:18.73 ID:yL08sSgL0.net
ディスプレイ設定の
マルチディスプレイの
複製表示するだとか拡張表示するだとかの設定を
プログラムで取得できますか?

165 :デフォルトの名無しさん (ワッチョイ 6f4b-iswg):2023/01/24(火) 16:12:45.07 ID:88+gyU910.net
そりゃ出来るだろ。
取得するAPIが用意されているかどうかは知らんけど。

166 :デフォルトの名無しさん :2023/01/24(火) 16:25:23.27 ID:WrVsgKSa0.net
>>164
WMIでググって見ると良いかも。

167 :デフォルトの名無しさん (オイコラミネオ MM07-88l+):2023/01/24(火) 17:43:09.31 ID:hrk0Jab5M.net
>>164
.Netのフレームワーク抜きにして

基本的にwindowsの情報はwin32 apiかwinRtかで取得できる
楽かどうかは不明だけど両方ともC#ではアクセスできる

それ以外にレジストリの情報だけと言う場合もあるけど

168 :デフォルトの名無しさん :2023/01/24(火) 18:08:58.39 ID:hrk0Jab5M.net
思い出というかうろ覚えレベルだけど

昔はwinformsの方でAPIがあって複数画面の情報は取れた
WPFにはAPIが用意されてなかったのでwinformsを参照して情報を取ってた

169 :デフォルトの名無しさん :2023/01/25(水) 10:31:48.06 ID:1QUndYzE0.net
>>166
WMIの存在知っていて、Monitor〇〇は見てみたんですけど、モニタごとの
情報は取得できるけどマルチディスプレイの設定は見当たらないんですよね。

>>167
win32apiも見たんですが、やはりモニタごとの設定は取得できるんですが、
マルチディスプレイの設定みたいなのが見当たらなかったです。

170 :デフォルトの名無しさん :2023/01/25(水) 11:29:49.38 ID:YgKVEuEk0.net
>>169
答えはわからなかったが、これを見る限りレジストリに保存していそう
https://answers.microsoft.com/ja-jp/windows/forum/all/%E3%83%9E%E3%83%AB%E3%83%81%E3%83%A2%E3%83%8B/ab090d66-dade-4723-a019-019c75a9258f

171 :デフォルトの名無しさん (ワッチョイ cf10-nezH):2023/01/25(水) 11:37:43.88 ID:HF2K9cvb0.net
>>169
上の人が書いているけど、レジストリっぽいですね。

DisplaySwitch.exeによる切り替えは結構ヒットするんだけど、情報取得はみつけられなかった。

WindowsAPIだと、

SetDisplayConfig
QueryDisplayConfig

あたりがそれっぽいのかも?
詳しい人の回答を期待w

172 :デフォルトの名無しさん :2023/01/25(水) 12:37:42.36 ID:SKrgZEWi0.net
マルチディスプレイの設定って具体的に何よ
最終的に何の項目の値が欲しいのよ
コンパネや設定アプリのこの項目ですとかそういうの書きなさいよ

173 :デフォルトの名無しさん :2023/01/25(水) 13:43:55.80 ID:g3U6xxzNd.net
マルチディスプレイの項目の
表示画面を拡張するや、表示画面を複製するが何になってるか取得したいって最初に書いたんだけどな…

174 :デフォルトの名無しさん :2023/01/25(水) 14:06:15.04 ID:VgR3j9B70.net
C言語から入った人間なのでexeファイル=機械語と思いこんでたけど違うんですね……
中間言語?CLR?いやC#もexeファイル作成されるじゃんどういうこっちゃと思ってました
えーっとC#のexeファイルは中間言語で出来てるって理解であってます?つまりexeだけど.net入ってないPCじゃ実行できないってことですよね?

175 :デフォルトの名無しさん :2023/01/25(水) 14:08:37.83 ID:6qMSPLxFF.net
ならその画面出してキャプチャして画像解析でもすりゃええやん

176 :デフォルトの名無しさん :2023/01/25(水) 16:47:40.06 ID:lfyXBnaV0.net
>>174
C言語から入ったからじゃない
お前が無知なだけ

177 :デフォルトの名無しさん :2023/01/25(水) 17:31:10.31 ID:VgR3j9B70.net
>>174ですが解決しました。失礼しました。

178 :デフォルトの名無しさん :2023/01/25(水) 19:26:40.13 ID:FCKUBvCH0.net
>>176
建設的でなく情報を提供することもない価値のない書き込みをありがとう
でもそういうのやめにしないか?

179 :デフォルトの名無しさん :2023/01/25(水) 19:28:12.41 ID:BZf8jlam0.net
C言語関係ないので間違ってはないな

180 :デフォルトの名無しさん :2023/01/26(木) 02:21:06.17 ID:ZFMbSjAA0.net
むしろcから入ったほうが、ほかのいわゆる高級言語から入るより詳しくなりそうな気がするんだがな

181 :デフォルトの名無しさん :2023/01/26(木) 05:08:09.80 ID:v0vT4MdvM.net
C言語プログラムではexeファイル作成しても実行環境のランタイム周りでエラー吐くと即実行時エラーで停止するからな

182 :デフォルトの名無しさん :2023/01/26(木) 15:37:19.08 ID:O3LYxWam0.net
プログラミン好きじゃないけど、稼ぐ手段と考えたら上達しないんですかね?
ていうか、うまく出来もしないのに好きでいることなんて出来るでしょうか
成果が出て好きになるのでは?

183 :デフォルトの名無しさん :2023/01/26(木) 15:40:51.40 ID:r9XE4FBU0.net
好きとか 嫌いとか最初に言い出したのは誰なのかしら

184 :デフォルトの名無しさん :2023/01/26(木) 16:46:19.96 ID:O3LYxWam0.net
分からん
好きなことで生きていくみたいな

他人と比べて明らかに下手でも好きでいられるのだろうか

185 :デフォルトの名無しさん :2023/01/26(木) 18:41:23.01 ID:SJYXMXJT0.net
>>182
スレ違いどころか板違い
低能すぎるからハロワ行け

186 :デフォルトの名無しさん :2023/01/26(木) 19:37:48.38 ID:GkI+YKE10.net
スレチ警察ご苦労

187 :デフォルトの名無しさん :2023/01/27(金) 01:10:49.54 ID:unSIwQ1w0.net
駆け抜けてゆく 私のメモリ外♪

188 :デフォルトの名無しさん :2023/01/27(金) 18:21:50.28 ID:01PH/qCE0.net
ここで聞いていいのかわからんけど
WinUI3
Windows App SDK
MAUI
こいつら並行して存在してるみたいだけど関係性ってどうなってんの?
UWPはディスコンになったって理解でいいの?

189 :デフォルトの名無しさん :2023/01/27(金) 21:43:33.88 ID:unSIwQ1w0.net
多分Microsoftも分かってない

190 :デフォルトの名無しさん :2023/01/27(金) 21:49:53.26 ID:P0p3cJ8l0.net
本当はMSも新しいものにシフトしたいけどWin32は捨てられないし
レガシー無視ならWindowsである必要が無くなるからなぁ
なんやかんやでwebの技術でアプリは作れる時代だし
XAMLなんかはそろそろ辞めた方が良い気がするんだよなぁw

191 :デフォルトの名無しさん :2023/01/27(金) 22:49:09.08 ID:Ze4DWSK5M.net
>>188
それ全部層が別なんだ
以下俺の理解

まず下に行くほど上位層になる
様々な状況を無視して強引にフォルダにしてみると
c:\MAUI\Windows App SDK\WinUI3

・WinUI3
windows用の新しいGUIライブラリ
C++で書かれててc++にもXAMLの恩恵が前より受けられるらしいのだが魔術に近いコードを書かされるゴミ
目新しさだけで近づくと絶望感しか感じられない残念なプロダクト



・Windows App SDK
windows上で現在色んな技術 win32 winrt winUI3 などがごちゃごちゃにあって
それを統一的には無理だけどアクセスできるレベルに合体させようと言う残念な仕組みのゴミ
この世にドラゴンボールのフュージョンはないと思い知らされる凄いプロダクト



・MAUI
マルチプラットフォームでiPhone,android,windowsなどいろんなシステムを横断して最大公約数的に使う仕組み
本来は開発工数が下がるはずなのだが個々のシステムをかなり理解していないと何もできないゴミ
各プラットフォームでの学習+MAUIの学習と言う学習時間フルコースプロダクト
ある意味超人オリンピック

192 :デフォルトの名無しさん :2023/01/27(金) 23:00:16.44 ID:Ze4DWSK5M.net
MSのFAQから意訳

UWPで開発で満足してる人は焦ってWindows App SDKに移行する必要はない

193 :デフォルトの名無しさん :2023/01/27(金) 23:02:56.90 ID:kMLtWNPM0.net
>>191
ゴミしかなくね?

194 :デフォルトの名無しさん :2023/01/27(金) 23:08:34.74 ID:Ze4DWSK5M.net
MSは基本的にwindowsアプリ開発のベースをUWPで見てる節がある

それ以外の人にもUWP並みの恩恵をと言うのがWindows App SDK

195 :デフォルトの名無しさん :2023/01/27(金) 23:54:16.49 ID:Fhi2vLV20.net
MSもElectron使ってるし、実際ゴミしかないので
WPF以降はもうWebベースに移ったほうがいいかなって思ってる

196 :デフォルトの名無しさん :2023/01/27(金) 23:55:50.76 ID:Fhi2vLV20.net
Webベースっていうと語弊があるな、ブラウザベースか

197 :.NET MAUI HighSchool :2023/01/28(土) 07:46:47.27 ID:Akv+btg40.net
>>195
ElectronってVScodeだけじゃね?
OfficeとかWinUI3っぽいしVSもC#じゃんね?
UnityもUI部分の画面はC#みたいだぞ

198 :デフォルトの名無しさん :2023/01/28(土) 08:32:44.81 ID:TqWhMxhs0.net
Teams

199 :デフォルトの名無しさん (ワッチョイ e301-s91j):2023/01/28(土) 09:48:55.24 ID:p3y/mDFs0.net
>>191
ありがとう

そりゃいつまで経ってもWinFormsが無くならんわけだわ
なんなら一番成功してるまである

200 :デフォルトの名無しさん (ワッチョイ 364a-ozkd):2023/01/28(土) 10:37:15.32 ID:ggMIOAKX0.net
高dpiで画面が崩れるのどうにかしてほしい

201 :デフォルトの名無しさん (ワッチョイ 8335-6BSU):2023/01/28(土) 10:42:06.46 ID:qgiHv5Wf0.net
ズームしてるからやろ?

202 :デフォルトの名無しさん :2023/01/28(土) 10:42:44.43 ID:p3y/mDFs0.net
>>200
VS2022でなんか対策入ってなかったっけ?

203 :.NET MAUI HighSchool :2023/01/28(土) 11:23:23.91 ID:Akv+btg40.net
>>202
.NET7じゃね?

204 :デフォルトの名無しさん :2023/01/28(土) 16:16:56.07 ID:qgiHv5Wf0.net
XAMLやバインディングは難解すぎる

205 :デフォルトの名無しさん :2023/01/28(土) 16:21:44.03 ID:SSo2rJoBd.net
>>198
Desktop版Teams糞すぎでweb版使うよね

206 :デフォルトの名無しさん :2023/01/28(土) 16:31:49.12 ID:qgiHv5Wf0.net
XAMLとロジックを分離することでデザインだけに特化したプロフェッショナルに任せられるとかいうけどそんなことしてるところあるのかね

207 :デフォルトの名無しさん :2023/01/28(土) 16:33:29.41 ID:qgiHv5Wf0.net
C#を知らずに書けるのか

208 :デフォルトの名無しさん :2023/01/28(土) 16:34:51.45 ID:zBTU9IJ/0.net
XAMLに文句言ってる人もべつになにかもっと良い代替案があるわけでもないんだろ?
jsonかyamlかあるいはまたなにか独自仕様でも作るか。

209 :デフォルトの名無しさん :2023/01/28(土) 18:27:49.87 ID:DKSWYQK4a.net
Windowsデスクトップアプリの次のスタンダードはWebView2に決定してるよ
C#とも何の問題もなく連携できるから、もう何も心配することはない
ただHTML/CSSだけできればよい

210 :デフォルトの名無しさん :2023/01/28(土) 18:34:56.52 ID:x9KLfrKP0.net
WinFormsだけを強化/ブラッシュアップして行くだけでいいのに
今現在Microsoftが決定してることは全部間違った方向

211 :.NET MAUI HighSchool :2023/01/28(土) 18:37:51.27 ID:Akv+btg40.net
>>207
正直余裕

212 :.NET MAUI HighSchool :2023/01/28(土) 18:39:12.56 ID:Akv+btg40.net
HTML,CSS,JavaScriptほど密結合の強い組み合わせないと思うけどな
WinFormもそうか

213 :デフォルトの名無しさん :2023/01/28(土) 18:51:54.18 ID:DKSWYQK4a.net
>>206
現実には無いね
Web開発ではHTML/CSSですら自分で書けるデザイナーは稀であり、デザイナーはお絵描きするだけでHTML/CSSはエンジニアが書くのが普通だ
ましてやC#エンジニアしかまず目にしないXAMLを扱えるデザイナーなんて存在しない

214 :デフォルトの名無しさん :2023/01/28(土) 19:08:33.35 ID:acHVjvs20.net
>>208
JavaFXと言う屍なら

215 :デフォルトの名無しさん :2023/01/28(土) 21:22:31.10 ID:0L7E+iYP0.net
xamlはさくっと簡易なgui作る程度なら便利ではあるがxamlだけだとboolの反転すらできないから結局コード書くことになるんでbindingクソ喰らえってなる

216 :デフォルトの名無しさん :2023/01/28(土) 21:27:00.01 ID:p3y/mDFs0.net
XAMLでも何でもいいから
ひとつこれと決めてしっかり枯れるまで面倒見てほしい

217 :デフォルトの名無しさん :2023/01/28(土) 22:47:24.30 ID:Q8ohQpbl0.net
XAMLはもう枯れてるのでは?

218 :デフォルトの名無しさん :2023/01/28(土) 23:00:10.63 ID:acHVjvs20.net
x:Bindだとコンバーターは普通のスタティックメソッドでコンパイル時に型チェックしてくれるから大分良くなってるんだけどね

219 :デフォルトの名無しさん (ワッチョイ 8379-jh2e):2023/01/29(日) 01:16:07.51 ID:R24XfIrD0.net
>>209
>Windowsデスクトップアプリの次のスタンダードはWebView2に決定してるよ
もう2ひねりぐらいしないとコレ常用は厳しいなあと思う
HTAの再発明の上に実行環境がフォルダ掘ったりで劣化しとるのにスタンダードになるとは到底思えない
外人にも概ね評判悪いみたいだし

220 :デフォルトの名無しさん :2023/01/29(日) 09:49:06.93 ID:fP4u16yma.net
>>208
xamlなんて使わないで、C#でUIを簡単に定義できるようにすればいい
覚えることも減るし、コードとの親和性も良くなる

221 :デフォルトの名無しさん :2023/01/29(日) 10:28:03.21 ID:tvJJpmA20.net
>>206
扱えるデザイナとそもそもツールがないような?

222 :デフォルトの名無しさん :2023/01/29(日) 11:42:03.87 ID:57gL/0v0a.net
>>220
WPFはXAML使わずC#だけで書けるからそれが良けりゃ自分でライブラリ作れよ

223 :デフォルトの名無しさん (ワッチョイ 1a42-+rQD):2023/01/29(日) 12:02:19.28 ID:1KUwXnGJ0.net
>>220
MauiにMVUってコードでUI記述できるやつあるけど使いやすいか?
https://qiita.com/MAUIHighSchool/items/5f55bbb3557368b0a1f4

224 :デフォルトの名無しさん (ワッチョイ a702-fO7+):2023/01/29(日) 12:12:03.57 ID:Bt1+Pj/S0.net
flutterっぽいな

225 :デフォルトの名無しさん :2023/01/29(日) 13:15:24.15 ID:R8JESUlY0.net
>>223
今flutter取り組んでるけど、
単なるデザイン処理がコード中に占める割合が高くて
めちゃ読みにくて慣れんわ

226 :デフォルトの名無しさん :2023/01/29(日) 13:27:12.72 ID:8bst+jr10.net
GUI黎明期は間違いなくコードでUI記述してたわけで
先人がこれはあかんと否定してきたものを今更リベンジさせる必要があるんだろうか

227 :.NET MAUI HighSchool :2023/01/29(日) 13:50:59.81 ID:i3THky500.net
今WinUI3で5chブラウザ作ってるんだがレスのアンカーだのハイパーリンクだと画像のリンクだのを抜き出す処理を考えてるんだがどうしたものか迷ってる
当然その書かれた位置にそのボタンやリンク貼り付けなきゃいけないんだがアンカーやリンクとその他記事は同じ行にはない(<br>で区切られてる)と仮定して<br>でSplitかけて行ごとでRegexとかを行おうと思ってるけどこの方法あってるか?

228 :デフォルトの名無しさん :2023/01/29(日) 13:55:11.83 ID:8bst+jr10.net
>>227
自前でパーサー書くよりもその手のスクレイピングライブラリは数多あるからそれ使った方が早いと思う

229 :デフォルトの名無しさん (アウアウウー Sa47-6BSU):2023/01/29(日) 15:11:11.20 ID:Srs41jrSa.net
行で区切る意味がわからん
普通に置換しろよ

230 :デフォルトの名無しさん :2023/01/29(日) 15:15:12.51 ID:Inli+tITa.net
WebViewならこれでlinkClickedにjsで独自処理書くなりそこからC#呼び出しするなり

<a xxx="~" href="~" yyy="~" >○○○</a>

<span class="link" data-info="ここに情報を入れる" onclick="linkClicked(this.getAttribute('data-info'))"
>〇〇○</span>

231 :デフォルトの名無しさん :2023/01/29(日) 15:18:44.23 ID:9PfpQq5Na.net
正規表現もこんな感じので充分やろ
<a.+?href="(.+?)".+?>(.+?)</a>

232 :デフォルトの名無しさん :2023/01/29(日) 15:19:58.32 ID:I1Pjf1q2a.net
+じゃなくて*か

233 :.NET MAUI HighSchool :2023/01/29(日) 16:56:28.41 ID:i3THky500.net
>>229
置換だとコントロールが作れない(ハイパーリンクコントロールなどがそれぞれ必要)

234 :.NET MAUI HighSchool :2023/01/29(日) 17:00:22.89 ID:i3THky500.net
WebViewでいけたらいきかったけどMVVMのBingingができんかった…(要素名.NativeToString(HTML))なんだけどXAMLにそれがなかったわ…orz

235 :デフォルトの名無しさん :2023/01/29(日) 17:28:42.21 ID:pHVlG+oVd.net
ソフト板の専用スレの連中は役に立たんのか?

236 :デフォルトの名無しさん :2023/01/29(日) 18:01:46.16 ID:1KUwXnGJ0.net
>>234
1.ビヘイビアを作る
2.ユーザーコントロールにWebViewのっけて依存関係プロパティーを設置してVMからコントロール
3.サービスを作ってVでWebViewのっけてからVMにインジェクションする

このどれかが普通かな?

237 :.NET MAUI HighSchool :2023/01/29(日) 19:07:46.52 ID:i3THky500.net
>>236
なるほどサンクス2が簡単そうかなぁ

238 :デフォルトの名無しさん :2023/01/29(日) 19:21:55.55 ID:XFhpsu3B6.net
初歩的な質問だと思うが書き込み失礼
win32APIでArduinoとシリアル通信をするコードを書いてる
static void Main(string[] args)
{

SerialPort serialPort;

serialPort = new SerialPort("COM3", 9600, Parity.None, 8, StopBits.One);
serialPort.Open();

while (true)
{
var pt = GetCursorPosition();
Console.WriteLine($"X:{pt.X} Y:{pt.Y}");

if ((pt.X > 500) && (pt.X < 1000) && (pt.Y > 300) && (pt.Y < 600)) {
serialPort.Write($"X:{pt.X} Y:{pt.Y}");
}
else
{

}

Thread.Sleep(100);
Console.Clear();

}

serialPort.Close();
}
Mainの部分がこんな感じなんだが、if文の中にマウスカーソル位置の範囲指定をしていて、カーソルがその範囲に入るとシリアル通信が始まってArduinoに接続したモータが動く(ここまではできた)
でも指定範囲を出るとそのモータが初期位置に戻るコードがうまく書けない。C#側でシリアル通信を中断して初期の段階に戻すような方法ある?elseの中に何書けばいいかわからない。

239 :デフォルトの名無しさん (ワッチョイ 8379-jh2e):2023/01/29(日) 19:50:03.63 ID:R24XfIrD0.net
>>238
else
{
serialPort.Write(初期位置);
}
で何か問題あるのかな?
初期位置が何を示すのか知らんけど、シリアルはフロー制御なしなら基本垂れ流しになるから、
開始とか中断の概念は持たない
else節で100ms毎に初期位置座標を送り続けるのが嫌なら送信フラグでも持って送ったか判定すればいいのでは

240 :デフォルトの名無しさん :2023/01/29(日) 20:04:34.68 ID:qu76jy1yd.net
シリアル通信ってただのbyte列のやり取りでしかなく、中断とかの概念は存在しない。
Arduino側はreadlineかscanfかやってるだけでしょ?

この場合はifのtrue側で$"set:{},{}"、false側で$"default:"を送るのがいいんじゃない?

「初期の段階に戻す」とやらが何をするのかは知らんが、C#側が黙ってたらArduinoは何もできない

241 :デフォルトの名無しさん :2023/01/29(日) 20:11:58.96 ID:XFhpsu3B6.net
>>240
Arduino側はSerial.availableで信号読み取ってる
それがいけないのか
初期の段階に戻すのは、(Arduino側でサーボモータの初期位置を0度にしてるから)指定範囲を出るとサーボモータが0度戻るようにしたい。(つまり信号が送られる前の状態に戻したい)
でもあんまりArduinoの話すると板違いって発狂するだろ

242 :デフォルトの名無しさん :2023/01/29(日) 20:31:37.77 ID:R24XfIrD0.net
サーボモーター云々の話なら座標以外に「初期の段階に戻す」のシリアル命令をarduino側で定義すればいいだけなのでは

243 :デフォルトの名無しさん :2023/01/29(日) 20:58:08.63 ID:h+Z7+/+00.net
>>241
C#というよりプログラミングの初歩的な設計の話だから怒られんだろ
板違いってのはそういうことな
>>239が大体答え言ってるじゃん

244 :デフォルトの名無しさん (ワッチョイ 8379-jh2e):2023/01/30(月) 03:54:10.75 ID:Yr+dar0w0.net
電電板にArduinoスレがあるの知らないかもしれないから一応リンクを。サーボやArduino自体の使い方とかはそっちで
Arduino初心者熱烈大歓迎質問スレ part36
https://rio2016.5ch.net/test/read.cgi/denki/1672830085/

245 :デフォルトの名無しさん :2023/01/30(月) 11:22:46.40 ID:SqjDQYar0.net
>>243
ツンツンしてんな~
相談室なんだからいいだろ

246 :デフォルトの名無しさん :2023/01/30(月) 19:52:43.52 ID:afDHhw4l0.net
パソコンのWebから秀丸の文書を開きたいのです。例えば、C:\\Data\\sample.txtというファイル
で、URLスキームというのを見つけました。
https://qiita.com/kojimadev/items/74100c8557a92939ef69
ここでレジストリにHidemaruを設定したら、秀丸を起動はできました
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\XXX]
@="URL:Hidemaru Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\Hidemaru\shell\open\command]
@="\"C:\\Program Files (x86)\\Hidemaru\\Hidemaru.exe\" \"%1\""
ですが、%1 のところですが、ブラウザから呼ぶときに
Hidemaru:C:\\Data\\sample.txt
としても、Hidemaru:C:\\Data\\sample.txt というフルパスが秀丸に与えられて頭のHidemaru:が邪魔になります
なので、このスキーム部を削除するために、ここではC#を使って加工しているのですが、このC#はどこにどう配置したらいいのでしょうか
私はC++等のプログラムはできますが、C#とかは初めてです
このC#はクライエントのhtmlファイルに<script></script>とかに入れてつくるのでしょうか。やってみたのですがうまく動きません
どうしたらいいでしょうか?
クライエントは、簡単に
<!DOCTYPE html>
<html>
<head>
<title>テスト</title>
</head>
<body>
<a href="Hidemaru:C:\\Data\\sample.txt">sample.txtへのリンク</a>
</body>
</html>
としました

247 :デフォルトの名無しさん :2023/01/30(月) 20:11:57.30 ID:q0Wux2Rd0.net
なんか勘違いしてるっぽいな
URLスキームで、hidemaru.exeではなくて自作のexeに関連付けて、
自作のexeでmainに引数として渡されてきたURLを加工して
hidemaru.exeを改めて起動するって話だよ
C#でないとできないことではないし、C++に慣れてるならそれでCreateProcessすればいいんじゃない?

248 :デフォルトの名無しさん :2023/01/30(月) 21:34:40.15 ID:afDHhw4l0.net
ああ、そういうことかあ、2段階踏まないとダメなのね
自作の簡単なC言語のHello!みたいのを作ってその引数に
http:---が入ってきてそれを加工して秀丸を起動しないといけないってこと?
htmlファイルだけで直接起動は出来ないのね

249 :デフォルトの名無しさん :2023/01/31(火) 00:29:45.17 ID:hLRYDq4/M.net
確かURLスキームはセキュリティホールになるから世界中で使われなくなってきたはずなんだけど
今更なんで使うんだ?

250 :デフォルトの名無しさん :2023/01/31(火) 03:14:23.94 ID:8roNDUlQd.net
馬鹿だから

251 :デフォルトの名無しさん (アウアウウー Sa47-DSsr):2023/01/31(火) 05:00:45.55 ID:JnYo5yDia.net
もし、ブラウザのHTML から、ローカルPC 内にアクセスできたら、
世界中のパソコンが乗っ取られているはずw

ローカルPC内で起動しているサーバーを通さないと、アクセスできないはず

Ruby on Rails などのLinux ウェブ系をやっていない、
Windows の香具師は、平気で恐ろしい事を考える

252 :デフォルトの名無しさん :2023/01/31(火) 07:03:33.59 ID:eeFPm4F70.net
>>246, 248
カスタムURLスキームでそういうことをする場合は、わざわざC#で作らずとも、一旦WindowsビルトインのWSH(JScript)で中継してパラメータをサニタイズするといいよ(レジストリ登録(*)さえ済ませておけばどこでも動く)

(*)下記のようにwscript.exeに対して「パラメータをサニタイズ+それを任意のプログラムに渡して起動するJScriptのパス」と「パラメータ」を渡す
C:\Windows\System32\wscript.exe "C:\script.js" "%1"

253 :デフォルトの名無しさん :2023/01/31(火) 09:08:38.25 ID:31HE1wSM0.net
>>252
ありがとう。AHKで作りました。ローカルで使うのでセキュリティとかは大丈夫です

254 :デフォルトの名無しさん :2023/02/02(木) 10:26:07.11 ID:yh09g2+40.net
>>227
適当なパーサライブラリでASTに変換
ASTからParagraph(Microsoft.UI.Xaml.Document)を構築
RichTextBlockのBlocksにParagraphを追加

255 :デフォルトの名無しさん :2023/02/02(木) 21:06:57.50 ID:pqzuUQeLM.net
いい加減MAUI君に構うのはやめろよ
全然C#固有の問題じゃないし…

winforms,WPF,ストアアプリ、UWPで専ブラ作ってたけど
そういうところも含めて自分で考えて実装するのが醍醐味じゃないのかなあ?

考えてもわからないなら過去にオープンソースで開発されたものがたくさんあるんだからそれを見て見るとかやりようがあるんじゃないかと

256 :デフォルトの名無しさん :2023/02/09(木) 16:28:46.38 ID:Zlo87tEd0.net
https://www.publickey1.jp/blog/23/cvisual_basicnet.html

236 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver.24052200