「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
探検
ふらっと C#,C♯,C#(初心者用) Part141
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/12/15(土) 10:46:07.45ID:Wu4Fx0bU2019/03/13(水) 12:10:14.62ID:aEeMgLuC
>>53
サンクス
サンクス
2019/03/13(水) 12:41:50.39ID:aEeMgLuC
サイトに自動ログインしたいのですが
ID/PASSの自動入力、ログインボタンのクリックはできました。
しかし、Googleの認証エリア(私はロボットではありません。 reCAPTCHA)へのチェックを
どうしても入れられません。
iFrameを使っているみたいなのですが、
こういう場合ってIEの自動操縦で操作する事は無理でしょうか?
自動ログインをして手間を省きたいのです。
ID/PASSの自動入力、ログインボタンのクリックはできました。
しかし、Googleの認証エリア(私はロボットではありません。 reCAPTCHA)へのチェックを
どうしても入れられません。
iFrameを使っているみたいなのですが、
こういう場合ってIEの自動操縦で操作する事は無理でしょうか?
自動ログインをして手間を省きたいのです。
2019/03/13(水) 14:12:54.35ID:oz2fTnLu
>>55
AIの出番
AIの出番
2019/03/13(水) 15:29:39.84ID:J7uH1zio
まぁそういう自動ログインを防ぐための仕組みだしなぁ
googleと勝負するかそのサービス提供者にrecaptcha外してもらうかくらいじゃない?
googleと勝負するかそのサービス提供者にrecaptcha外してもらうかくらいじゃない?
2019/03/13(水) 18:14:15.39ID:aEeMgLuC
2019/03/13(水) 18:40:07.18ID:J7uH1zio
>>58
キーが送れるなら普通はspaceでチェックボックスonできるけどrecaptchaを突破できるかはしらん
キーが送れるなら普通はspaceでチェックボックスonできるけどrecaptchaを突破できるかはしらん
2019/03/13(水) 18:59:57.06ID:aEeMgLuC
2019/03/13(水) 23:11:05.05ID:K5xsHdh9
自動ログインしてるとロボット判定くらって
パズルやる羽目になるんじゃないかな。
パズルやる羽目になるんじゃないかな。
2019/03/14(木) 01:36:16.07ID:SO0caDlp
2019/03/14(木) 17:17:00.07ID:SO0caDlp
Navigate と Navigate2の違いは何ですか?
サイトによって前者だったり後者だったりします。
サイトによって前者だったり後者だったりします。
2019/03/15(金) 09:02:12.36ID:ECrabEC5
https://docs.microsoft.com/en-us/previous-versions/aa752134
IWebBrowser2::Navigate2のことなら
> This method extends the IWebBrowser2::Navigate method to allow for Shell integration;
> however, this method does not make IWebBrowser2::Navigate obsolete.
> The original method can still be used for URL navigations.
IWebBrowser2::Navigate2のことなら
> This method extends the IWebBrowser2::Navigate method to allow for Shell integration;
> however, this method does not make IWebBrowser2::Navigate obsolete.
> The original method can still be used for URL navigations.
2019/03/15(金) 09:03:53.21ID:ECrabEC5
あ、docsってURLの末尾の括弧抜くとリンクできないのか…?
https://docs.microsoft.com/en-us/previous-versions/aa752134%28v%3dvs.85%29
https://docs.microsoft.com/en-us/previous-versions/aa752134%28v%3dvs.85%29
2019/03/15(金) 09:46:32.60ID:EAyT7KDv
↑そんなページあったんや。
サンクス
サンクス
67デフォルトの名無しさん
2019/03/15(金) 15:32:11.15ID:4iy7KMFj 「実戦で役立つ C#プログラミングのイディオム/定石&パターン」っていう本が気になるんですが、これってSOLIDの原則みたいなものが解説されてる本なんですか?
https://www.amazon.co.jp/dp/4774187585
本の題名から、デザインパターンの本っぽく見えるものの、見方を変えればただの逆引き系テクニック本っぽくも見えて判別が付きません・・・・
持ってる人いたら教えて!
https://www.amazon.co.jp/dp/4774187585
本の題名から、デザインパターンの本っぽく見えるものの、見方を変えればただの逆引き系テクニック本っぽくも見えて判別が付きません・・・・
持ってる人いたら教えて!
68デフォルトの名無しさん
2019/03/15(金) 15:42:07.07ID:SEjqglYP ときどき話題になるけど
初心者用
プログラマーなら大半が無駄
初心者用
プログラマーなら大半が無駄
2019/03/15(金) 17:53:39.10ID:FRygED1T
70デフォルトの名無しさん
2019/03/15(金) 18:57:25.93ID:4iy7KMFj これかあ・・・なんと540ページ・・・・やっぱりこれ級の本が必要なの?
https://www.amazon.co.jp/dp/4822253546
本当はレジュメ10枚とかそんな簡単なのが欲しいんだけどそういう傾向のはないのかな
https://www.amazon.co.jp/dp/4822253546
本当はレジュメ10枚とかそんな簡単なのが欲しいんだけどそういう傾向のはないのかな
2019/03/15(金) 20:16:15.98ID:c5iTEfMf
「自分用に要約したまとめが欲しい」ってC#の自由度だと無理
ネットで公開されているオープンソースのもの読んで勉強したら本買うことも無い
ネットで公開されているオープンソースのもの読んで勉強したら本買うことも無い
2019/03/15(金) 21:42:32.93ID:YxtrToe/
2019/03/16(土) 11:34:56.31ID:DBWOZzSE
今更の質問ですが
ブラウザの自動操縦はC#で行ってました。
VBAで自動ログインだったりスクレイピングもできますか???
だとするとC#で抽出してExcelに転記する必要なかったなぁ〜〜〜
ブラウザの自動操縦はC#で行ってました。
VBAで自動ログインだったりスクレイピングもできますか???
だとするとC#で抽出してExcelに転記する必要なかったなぁ〜〜〜
2019/03/16(土) 15:22:00.40ID:rerYIj+i
2019/03/16(土) 21:28:06.14ID:DBWOZzSE
76デフォルトの名無しさん
2019/03/18(月) 03:01:47.93ID:Orngtrfp >>70
レビュー全然無いやん
レビュー全然無いやん
2019/03/18(月) 17:41:01.21ID:oR4heX+u
便利なツールを作りました。
しかし、悪い奴がそれをコピーして複数端末で使われると困ります。
そこでアドビ製品の様なライセンス制御の仕組みを取り入れたいのですが
何か参考になるサイトはありますか?
不正利用防止対策としてユーザに一意のキーを埋め込んで
アプリの起動時にWEBサーバにその情報を送って突合させようかと思っています。
何かもっとスマートなやり方をご存知の方はいませんか?
しかし、悪い奴がそれをコピーして複数端末で使われると困ります。
そこでアドビ製品の様なライセンス制御の仕組みを取り入れたいのですが
何か参考になるサイトはありますか?
不正利用防止対策としてユーザに一意のキーを埋め込んで
アプリの起動時にWEBサーバにその情報を送って突合させようかと思っています。
何かもっとスマートなやり方をご存知の方はいませんか?
2019/03/18(月) 17:44:06.83ID:pLo5oLE9
C#で作っていたらアクチだろうが何だろうがILSPYあたりで逆アセンブルされるから無駄
アクチ部分抜いてビルドしなおせば終わる
アクチ部分抜いてビルドしなおせば終わる
2019/03/18(月) 17:54:42.57ID:4bO+uLM3
2019/03/19(火) 22:47:35.46ID:lhNrB1l4
2019/03/19(火) 22:54:33.28ID:qnLJux/M
ドングル使う手もあるよね。
まあそんなケツの穴の小さいこと考えないのが一番簡単ではある
まあそんなケツの穴の小さいこと考えないのが一番簡単ではある
2019/03/19(火) 23:09:05.45ID:lhNrB1l4
↑はじめてきいたわ
そんなのあったんだ。
うーんまいったなー
一定の割合で犯罪者がいるから悩む
そんなのあったんだ。
うーんまいったなー
一定の割合で犯罪者がいるから悩む
2019/03/20(水) 00:39:48.00ID:v7tyiNru
web認証プラス重要なメソッドをwebapi化すれば本体リコンパイルされても再現不可能だな。
2019/03/20(水) 09:40:49.70ID:4fAbiRjS
2019/03/20(水) 12:49:53.54ID:ymiEsgRk
ここで聞くような人のものをそんな手間かけて使うのかって話
2019/03/20(水) 13:05:24.17ID:/jX7WF9n
対応する工数とそれで得られる利益が見合うならやればいい
adobe製品とかならまだしも見合うことなんてまず無いから
不正利用者はセキュリティしっかりしてたらそもそも利用しないから対応しても利益にはならない
adobe製品とかならまだしも見合うことなんてまず無いから
不正利用者はセキュリティしっかりしてたらそもそも利用しないから対応しても利益にはならない
2019/03/20(水) 13:15:41.54ID:ZZcTomnN
簡単な認証かけておけばカジュアルコピーは防げる。
リバースエンジニアリングまでするようなのは少数なはずだから、無視するのが現実的。
ガチでやるならドングル。面倒臭いから正規利用者からも嫌われるけど。
リバースエンジニアリングまでするようなのは少数なはずだから、無視するのが現実的。
ガチでやるならドングル。面倒臭いから正規利用者からも嫌われるけど。
2019/03/20(水) 13:47:25.53ID:4fAbiRjS
2019/03/20(水) 14:08:39.22ID:/jX7WF9n
どういうアプリかしらんけどIPみたいコロコロ変わるもんを認証に使って大丈夫なの?
macアドレスとか取ればいいんでね?
偽装は簡単にできるけどそういうのはスルーするんだろうし
とはいえ購入者が別端末使ったりPC買い換えるだけで不正利用扱いされることにはなるが
macアドレスとか取ればいいんでね?
偽装は簡単にできるけどそういうのはスルーするんだろうし
とはいえ購入者が別端末使ったりPC買い換えるだけで不正利用扱いされることにはなるが
2019/03/20(水) 14:20:50.41ID:4fAbiRjS
>>89
おお!!いいですね!!
@ユーザ個別の識別キー
Aユーザ利用のMACアドレス
BIPアドレス
カジュアルライセンス制御は、これでうまくいけそうです!
(一部の犯罪者はもうスルーします。どうせ作れるだろうし、、、)
おお!!いいですね!!
@ユーザ個別の識別キー
Aユーザ利用のMACアドレス
BIPアドレス
カジュアルライセンス制御は、これでうまくいけそうです!
(一部の犯罪者はもうスルーします。どうせ作れるだろうし、、、)
2019/03/20(水) 14:23:53.82ID:JR1ztFlD
というか、毎回認証するのはユーザーにとっても提供側にとっても負担大き過ぎでしょw
ネットつないでないと使えないし
普通にMSのアクティベーションと同様の仕組みでいいでしょ。
プロダクトキー使って一度認証したらライセンス返上するまでずっと有効。
1つのプロダクトキーがいくつかの(通常は一つ)のライセンス枠を持ってる。
枠が全部埋まってると誰かが返上して空きができない限り新たな認証はできない
以前使ってたTIの開発ツールはこんな感じだったよ
ネットつないでないと使えないし
普通にMSのアクティベーションと同様の仕組みでいいでしょ。
プロダクトキー使って一度認証したらライセンス返上するまでずっと有効。
1つのプロダクトキーがいくつかの(通常は一つ)のライセンス枠を持ってる。
枠が全部埋まってると誰かが返上して空きができない限り新たな認証はできない
以前使ってたTIの開発ツールはこんな感じだったよ
2019/03/20(水) 14:24:23.91ID:ZZcTomnN
2019/03/20(水) 14:43:00.12ID:4fAbiRjS
2019/03/20(水) 14:48:01.78ID:ZZcTomnN
>>93
偽装はともかく、正規ユーザーが不正判定され易いのは問題だよ。
偽装はともかく、正規ユーザーが不正判定され易いのは問題だよ。
2019/03/20(水) 14:58:40.20ID:/jX7WF9n
不正対策のために正規利用者が不利益を被ることは極力避けるべき
大抵が開発者の自己満足
ちょっとした手順が必要になるだけでも使い勝手は極端に下がる
ましてや誤って不正利用認定なんかされた日にはもう2度と関わりたくないと思う
さらにwebサーバーの常時保守と認証周りでのトラブルのカスタマーサポートとかまで考えたら本当に必要な工数なのかも疑わしい
そこまでする必要があるレベルのプロダクトならいちいちこんなところで質問なんて投げないだろうしね
大抵が開発者の自己満足
ちょっとした手順が必要になるだけでも使い勝手は極端に下がる
ましてや誤って不正利用認定なんかされた日にはもう2度と関わりたくないと思う
さらにwebサーバーの常時保守と認証周りでのトラブルのカスタマーサポートとかまで考えたら本当に必要な工数なのかも疑わしい
そこまでする必要があるレベルのプロダクトならいちいちこんなところで質問なんて投げないだろうしね
2019/03/20(水) 15:04:53.44ID:4fAbiRjS
2019/03/20(水) 17:10:46.92ID:/jX7WF9n
鯖への攻撃まで考慮しなきゃいけないくらいでかいソフトなの?
どんだけ高価なもん作ってるのか知らんけどパス付きzip程度じゃあかんの?
どんだけ高価なもん作ってるのか知らんけどパス付きzip程度じゃあかんの?
2019/03/20(水) 17:17:15.36ID:4fAbiRjS
2019/03/20(水) 17:17:40.52ID:lRuTUQCz
もうC#の話じゃないよな
100デフォルトの名無しさん
2019/03/20(水) 17:25:55.06ID:4fAbiRjS 不正コピー対策は必須ですよ
101デフォルトの名無しさん
2019/03/20(水) 17:33:20.02ID:ZZcTomnN102デフォルトの名無しさん
2019/03/20(水) 17:34:45.92ID:lRuTUQCz 自分の作ったソフト売りたいって話なら言語は関係ない
パッケージソフトなら不正コピーの心配必要だけどユーザー登録型のライセンス販売なら普通はサポート見込んで買うからそんな心配するのがおかしい
パッケージソフトなら不正コピーの心配必要だけどユーザー登録型のライセンス販売なら普通はサポート見込んで買うからそんな心配するのがおかしい
103デフォルトの名無しさん
2019/03/20(水) 17:45:20.84ID:4fAbiRjS >ユーザー登録型のライセンス販売
1か月1000円で販売予定
1か月1000円で販売予定
104デフォルトの名無しさん
2019/03/20(水) 18:31:09.68ID:/jX7WF9n 悪いやつがいるかいないかなんて話してないんだけど伝わらんな
悪いやつに対処するコストと悪いことされたときの被害額が見合うかって話だ
実被害なんてほぼ出ないのに無駄に開発コストかける意味は?
売れて実被害が出てから対策したって十分だよ
悪いやつに対処するコストと悪いことされたときの被害額が見合うかって話だ
実被害なんてほぼ出ないのに無駄に開発コストかける意味は?
売れて実被害が出てから対策したって十分だよ
105デフォルトの名無しさん
2019/03/20(水) 18:42:13.33ID:qInZcA4b この知識レベルだとライセンスの前にセキュリティが不安になる
106デフォルトの名無しさん
2019/03/20(水) 18:45:55.97ID:/jX7WF9n 初心者用で質問する人が月額モデルでしかも1000円も取るのか
そもそも月額モデルなら毎月の引き落としどうすんの?
クレカは?全部自前で用意すんの?
せめてvectorとか使ってシェアウェアにしときな
有料ソフトがいかに売れないかを知る良い体験できるよ
そもそも月額モデルなら毎月の引き落としどうすんの?
クレカは?全部自前で用意すんの?
せめてvectorとか使ってシェアウェアにしときな
有料ソフトがいかに売れないかを知る良い体験できるよ
107デフォルトの名無しさん
2019/03/20(水) 21:28:40.21ID:pSND/w6U SDカードって確かこっそりCPRM対応だと思ったけど、
あれをドングル的に流用できたりしないかなとちょっと思ったがどうだろう
CPRMの仕組みを理解してないので的外れかもしれんがw
あれをドングル的に流用できたりしないかなとちょっと思ったがどうだろう
CPRMの仕組みを理解してないので的外れかもしれんがw
108デフォルトの名無しさん
2019/03/20(水) 21:39:22.32ID:F2Rf/YlT データ整形について質問です。
Dictionary< string, object > に属性名、属性値が格納されています。
例
Key:Value
開催日:2019/3/20
場所:東京
1名前:太郎
1誕生日:2000/1/1
1年齢:19
2名前:花子
2誕生日:1998/2/14
2備考:魚アレルギー
これをDetail型(開催日,場所,名前,誕生日,年齢,備考)の配列かListに変換したいです。
1,2,...がとても不格好で整形しづらいのですが、変更が許されません。
この数字は多くても6個です。また、数字によっては該当の属性名がないものもあります。
なにかよい方法はないでしょうか。
Dictionary< string, object > に属性名、属性値が格納されています。
例
Key:Value
開催日:2019/3/20
場所:東京
1名前:太郎
1誕生日:2000/1/1
1年齢:19
2名前:花子
2誕生日:1998/2/14
2備考:魚アレルギー
これをDetail型(開催日,場所,名前,誕生日,年齢,備考)の配列かListに変換したいです。
1,2,...がとても不格好で整形しづらいのですが、変更が許されません。
この数字は多くても6個です。また、数字によっては該当の属性名がないものもあります。
なにかよい方法はないでしょうか。
109デフォルトの名無しさん
2019/03/20(水) 22:12:29.79ID:4fAbiRjS >>106
むっちゃ便利やねん
むっちゃ便利やねん
110デフォルトの名無しさん
2019/03/20(水) 22:30:16.54ID:pSND/w6U >>108
こんなので出来ない?
検証してないので知らんけど
public class Detail
{
public static Detail RetrieveFromDictionay(Dictionary<string, object> dic, int index)
{
var d = new Detail();
foreach (PropertyInfo info in typeof(Detail).GetProperties(BindingFlags.Public | BindingFlags.Instance))
{
var key = $"{index}{info.Name}";
object obj;
if (dic.TryGetValue(key, out obj))
if (obj.GetType() == info.PropertyType) info.SetValue(d, obj);
}
return d;
}
public DateTime 開催日 { get; set; }
public string 場所 { get; set; }
public string 名前 { get; set; }
public DateTime 誕生日 { get; set; }
public int 年齢 { get; set; }
public string 備考 { get; set; }
}
こんなので出来ない?
検証してないので知らんけど
public class Detail
{
public static Detail RetrieveFromDictionay(Dictionary<string, object> dic, int index)
{
var d = new Detail();
foreach (PropertyInfo info in typeof(Detail).GetProperties(BindingFlags.Public | BindingFlags.Instance))
{
var key = $"{index}{info.Name}";
object obj;
if (dic.TryGetValue(key, out obj))
if (obj.GetType() == info.PropertyType) info.SetValue(d, obj);
}
return d;
}
public DateTime 開催日 { get; set; }
public string 場所 { get; set; }
public string 名前 { get; set; }
public DateTime 誕生日 { get; set; }
public int 年齢 { get; set; }
public string 備考 { get; set; }
}
111デフォルトの名無しさん
2019/03/20(水) 22:30:19.68ID:C7TIImgv >>108
全keyを走査しながら1個1個処理していけばいいだけに見えるけどそれじゃだめ?
全keyを走査しながら1個1個処理していけばいいだけに見えるけどそれじゃだめ?
112デフォルトの名無しさん
2019/03/20(水) 22:39:16.99ID:Bg9D9rdv UWPで作れば色々面倒なことはMSが面倒見てくれるけどな
あの範囲で問題ないプログラム限定では有るが
あの範囲で問題ないプログラム限定では有るが
113デフォルトの名無しさん
2019/03/21(木) 10:46:12.53ID:WMeBK6gL >>110
できました。ありがとうございます。
勉強になりました。
ちなみにプロパティ名が英語の場合、もう一つ日本語と英語名が対になったDictionaryを定義して、そこから参照する形がいいでしょうか。
できました。ありがとうございます。
勉強になりました。
ちなみにプロパティ名が英語の場合、もう一つ日本語と英語名が対になったDictionaryを定義して、そこから参照する形がいいでしょうか。
114デフォルトの名無しさん
2019/03/21(木) 22:45:29.76ID:vrM85+ig Adobe製品の開発言語は、逆アセンブルされない為にC++で開発してるの?
115デフォルトの名無しさん
2019/03/22(金) 00:28:45.55ID:QnQyasxD C#でArrayListのSortを実行すると
昇順で並び替えられています。
これをDESC(降順)で行うにはどうすればよいですか?
LINQとやらを使った方が確実かな〜。
昇順で並び替えられています。
これをDESC(降順)で行うにはどうすればよいですか?
LINQとやらを使った方が確実かな〜。
116デフォルトの名無しさん
2019/03/22(金) 00:47:13.07ID:pVVdiXqm Sort()した後でReverse()すればいいよ
ArrayListだとSortだけで逆順にするにはIComparer書く必要があってだるいし
というか今時ArrayListなんて使ってないでList<T>使おう
ArrayListだとSortだけで逆順にするにはIComparer書く必要があってだるいし
というか今時ArrayListなんて使ってないでList<T>使おう
117デフォルトの名無しさん
2019/03/22(金) 00:48:26.04ID:QnQyasxD118デフォルトの名無しさん
2019/03/26(火) 13:13:53.47ID:DPMd1MEr VBAでごにょごにょやった方が効率いいね。
119デフォルトの名無しさん
2019/03/26(火) 18:39:16.11ID:DPMd1MEr VBAには、#region #endregion 的な機能はありますか?
コードが長くなってしまって縮小したいです。
コードが長くなってしまって縮小したいです。
120デフォルトの名無しさん
2019/03/26(火) 20:36:10.97ID:A7GEbRVd たぶんないと思うけどVBAスレで聞いた方がいいね
121デフォルトの名無しさん
2019/03/26(火) 21:09:29.22ID:DPMd1MEr ないのか
122デフォルトの名無しさん
2019/03/29(金) 18:21:05.18ID:ukrtQ6PV VS2017で
前のブックマークへ移動するショートカットコマンドですが
Control + K → P
はもう使えなくなったのでしょうか?
Control + B → P は使えます。
ただ、「K」はVS2010では普通に使えていたはずなのですが、、、
前のブックマークへ移動するショートカットコマンドですが
Control + K → P
はもう使えなくなったのでしょうか?
Control + B → P は使えます。
ただ、「K」はVS2010では普通に使えていたはずなのですが、、、
123デフォルトの名無しさん
2019/03/29(金) 18:30:25.09ID:yqow3AID124デフォルトの名無しさん
2019/03/31(日) 01:56:40.68ID:RIl4YBWE 例えばセッターのみが非publicなプロパティーがあるとして、
セッターにアクセスできるスコープからのみ見えるXMLコメントを
書くみたいなことって可能だったっけ?
セッターにアクセスできるスコープからのみ見えるXMLコメントを
書くみたいなことって可能だったっけ?
125デフォルトの名無しさん
2019/04/05(金) 16:23:35.92ID:q6NWzxZh IEを自動起動して、スクレイピングのプログラムを作っています。
スクレイピングに詳しい人教えてください。
ページ内にliが複数あるため、getElementByTagNameでliを指定すると
全部の要素を走査してしまい、時間が結構かかっています。
そこで上位ブロックの divのidが[id_koregahosii]になっている
liの要素を取得するといったコードを書きたいのですが
よい方法はありますでしょうか?
<div id="id_aaa"><li>あいうえお</li></div>
<div id="id_bbb"><li>かきくけこ</li></div>
・・・複数(1000以上)・・・
<div id="id_koregahosii"><li>このliを取得した</li></div>
mshtml_ec = ie.Document.getElementsByTagName("li");
foreach (mshtml.IHTMLElement i_ele in mshtml_ec)
{
//取得したデータを変数にセット
}
スクレイピングに詳しい人教えてください。
ページ内にliが複数あるため、getElementByTagNameでliを指定すると
全部の要素を走査してしまい、時間が結構かかっています。
そこで上位ブロックの divのidが[id_koregahosii]になっている
liの要素を取得するといったコードを書きたいのですが
よい方法はありますでしょうか?
<div id="id_aaa"><li>あいうえお</li></div>
<div id="id_bbb"><li>かきくけこ</li></div>
・・・複数(1000以上)・・・
<div id="id_koregahosii"><li>このliを取得した</li></div>
mshtml_ec = ie.Document.getElementsByTagName("li");
foreach (mshtml.IHTMLElement i_ele in mshtml_ec)
{
//取得したデータを変数にセット
}
126デフォルトの名無しさん
2019/04/05(金) 16:53:09.70ID:x8OJz+Ud .Document,getElementByIdしてからそのIHTMLElement2に対してgetElementsByTagNameすればいいんじゃね
127デフォルトの名無しさん
2019/04/05(金) 17:31:16.88ID:q6NWzxZh128デフォルトの名無しさん
2019/04/06(土) 23:59:31.30ID:8OPSxgse DataGridViewで特定列を除いて
編集させたくないので以下コードを書きました。
dgv_test.AllowUserToAddRows = false;
dgv_test.AllowUserToDeleteRows = false;
dgv_test.ReadOnly= true;
ただし、その中のCheckBox列だけは
チェックのON/OFFを出来る様にしたいです。
これを実現するにはどういうコードをかけば良いのでしょうか?
編集させたくないので以下コードを書きました。
dgv_test.AllowUserToAddRows = false;
dgv_test.AllowUserToDeleteRows = false;
dgv_test.ReadOnly= true;
ただし、その中のCheckBox列だけは
チェックのON/OFFを出来る様にしたいです。
これを実現するにはどういうコードをかけば良いのでしょうか?
129デフォルトの名無しさん
2019/04/07(日) 00:20:04.80ID:J7v3B2LO 地道に全セルをなめてReadOnlyを設定して
実現できました。
実現できました。
130デフォルトの名無しさん
2019/04/07(日) 01:32:05.92ID:J7v3B2LO 助けてくださいm(_)m
DataGridViewの2列目(インデックスは1)がチェックボックスです。
画面上でチェックを入れ「実行」ボタンを押した時に
その行にチェックが入っているかを判定しようとしていますが
うまくできません。。。どう判定したらいいのでしょうか?
エラー
ハンドルされていない例外
System.InvalidCasException:'指定されたキャストは有効ではありません。'
if ((bool)dgv_test[1, i_row].Value == true ) ← ここでエラーが発生
{
Debug.WriteLine("checkあり");
}
else
{
Debug.WriteLine("checkなし");
}
DataGridViewの2列目(インデックスは1)がチェックボックスです。
画面上でチェックを入れ「実行」ボタンを押した時に
その行にチェックが入っているかを判定しようとしていますが
うまくできません。。。どう判定したらいいのでしょうか?
エラー
ハンドルされていない例外
System.InvalidCasException:'指定されたキャストは有効ではありません。'
if ((bool)dgv_test[1, i_row].Value == true ) ← ここでエラーが発生
{
Debug.WriteLine("checkあり");
}
else
{
Debug.WriteLine("checkなし");
}
131デフォルトの名無しさん
2019/04/07(日) 02:00:48.99ID:vK2HJm7v >>130
boolではなくbool?でキャスト
boolではなくbool?でキャスト
132デフォルトの名無しさん
2019/04/07(日) 04:01:48.39ID:mKsxK2JJ >>125-126
Ruby, Nokogiri, Selenium WebDriver では、
doc = Nokogiri::HTML( driver.page_source )
element = doc.at_css '[id="id_koregahosii"] > li'
puts element.text
#=> このliを取得した
CSS Selector では、[id="id_koregahosii"] > li。
id 属性が"id_koregahosii" である要素の、直下のli 要素。
> は直下を表す
doc.at_css は、最初に見つかった、1つの要素で、
doc.css なら、配列(複数要素)が返ってくるように使い分けるので、要注意!
jQuery では、0・1つの要素の場合でも、常に配列が返るので、間違える事がない!
最初に、jQuery などで、CSS Selector を学ぶ必要がある。
それよりも複雑な指定は、XPath を使う
Ruby, Nokogiri, Selenium WebDriver では、
doc = Nokogiri::HTML( driver.page_source )
element = doc.at_css '[id="id_koregahosii"] > li'
puts element.text
#=> このliを取得した
CSS Selector では、[id="id_koregahosii"] > li。
id 属性が"id_koregahosii" である要素の、直下のli 要素。
> は直下を表す
doc.at_css は、最初に見つかった、1つの要素で、
doc.css なら、配列(複数要素)が返ってくるように使い分けるので、要注意!
jQuery では、0・1つの要素の場合でも、常に配列が返るので、間違える事がない!
最初に、jQuery などで、CSS Selector を学ぶ必要がある。
それよりも複雑な指定は、XPath を使う
133デフォルトの名無しさん
2019/04/07(日) 09:43:37.49ID:J7v3B2LO134デフォルトの名無しさん
2019/04/07(日) 09:50:53.11ID:e9OeE/L4135デフォルトの名無しさん
2019/04/07(日) 11:40:12.15ID:J7v3B2LO >>134
すみません。わからないので教えてください。。。。
すみません。わからないので教えてください。。。。
136デフォルトの名無しさん
2019/04/07(日) 11:45:12.82ID:vK2HJm7v >>135
bool?型と言ってるのになぜbool型にするの?
(bool)のとこを(bool?)って直すだけだぞ
null許容型は、要するに(bool?の場合は)true,false以外にnullも含む(許容する)型
bool?型と言ってるのになぜbool型にするの?
(bool)のとこを(bool?)って直すだけだぞ
null許容型は、要するに(bool?の場合は)true,false以外にnullも含む(許容する)型
137デフォルトの名無しさん
2019/04/07(日) 12:25:53.88ID:hRJe8zJK using System.Numericsとしているのに
Complex a = 123;とだけ書くと何故か赤い波線が付いてエラーになります
System.Numerics.Complex a = 123;とするとエラーは出ないのですが、省略できないのが気に食わない
Complex a = 123;とだけ書くと何故か赤い波線が付いてエラーになります
System.Numerics.Complex a = 123;とするとエラーは出ないのですが、省略できないのが気に食わない
138デフォルトの名無しさん
2019/04/07(日) 12:35:01.18ID:PRyiq+oO139デフォルトの名無しさん
2019/04/07(日) 12:44:33.68ID:hRJe8zJK >>138
暗黙的に変換できませんと書いてあります
暗黙的に変換できませんと書いてあります
140デフォルトの名無しさん
2019/04/07(日) 13:03:15.10ID:hRJe8zJK バージョンは2017です
System.NotImplementえdException: 'メソッドまたは操作は実装されていません。'というエラーも出ます
System.NotImplementえdException: 'メソッドまたは操作は実装されていません。'というエラーも出ます
141デフォルトの名無しさん
2019/04/07(日) 13:07:44.80ID:8KGRZT5W その再現する部分だけを書いたプロジェクトをどこかに晒してみたら?
142デフォルトの名無しさん
2019/04/07(日) 13:30:29.80ID:hRJe8zJK 全部削除して書き直したら治りました
何度も確認したのでタイプミス等ではないはずですが、何が原因だったのか
お騒がせしました
何度も確認したのでタイプミス等ではないはずですが、何が原因だったのか
お騒がせしました
143デフォルトの名無しさん
2019/04/07(日) 14:10:37.33ID:/8+Cw91p >>130
var o = (bool?)true;
bar b = (bool)o;
これは実行時もエラーは発生しないし、
var o = (bool?)null;
bar b = (bool)o;
これで発生する例外はNullReferenceExceptionみたいだから、たぶん指摘されてるのと別の原因なんだろうなあ。
知らんけど。
var o = (bool?)true;
bar b = (bool)o;
これは実行時もエラーは発生しないし、
var o = (bool?)null;
bar b = (bool)o;
これで発生する例外はNullReferenceExceptionみたいだから、たぶん指摘されてるのと別の原因なんだろうなあ。
知らんけど。
144デフォルトの名無しさん
2019/04/07(日) 14:24:18.31ID:/8+Cw91p あー間違えた
var o = (bool?)true;
じゃなくて
object o = (bool?)true;
だね。結論は変わらない
var o = (bool?)true;
じゃなくて
object o = (bool?)true;
だね。結論は変わらない
145デフォルトの名無しさん
2019/04/07(日) 16:58:28.24ID:aTlDD0vY146デフォルトの名無しさん
2019/04/07(日) 17:21:54.02ID:kimAJSSB147デフォルトの名無しさん
2019/04/07(日) 17:31:51.66ID:vK2HJm7v >>130
失礼。
発生した例外がNullReferenceExceptionではないから、
bool?にキャストすべき所がboolになってるバグの他にもバグがある。
例外はInvalidCasExceptionだから、
DataGridViewの列の定義が間違っていてdgv_test[1, i_row]がDataGridViewCheckBoxCellになっていないか、
初期化時にdgv_test[1, i_row].Valueにbool以外の値を代入していると思われる。
失礼。
発生した例外がNullReferenceExceptionではないから、
bool?にキャストすべき所がboolになってるバグの他にもバグがある。
例外はInvalidCasExceptionだから、
DataGridViewの列の定義が間違っていてdgv_test[1, i_row]がDataGridViewCheckBoxCellになっていないか、
初期化時にdgv_test[1, i_row].Valueにbool以外の値を代入していると思われる。
148デフォルトの名無しさん
2019/04/07(日) 17:37:12.90ID:AvqFg232 終わった話でマウントしなくていいよ…
149デフォルトの名無しさん
2019/04/08(月) 13:25:57.00ID:mdLXKZZ1 ほんそれ
150デフォルトの名無しさん
2019/04/08(月) 15:30:44.33ID:G4htz/so Windowsフォームでコントロールのプロパティの
EnableをFalseにすると「若干」色が薄くなるようですが
もっとはっきり薄くできないですかね?
完全に消えるとまずいんだけど
はっきり「今これは使えません」って意思表示したいんだけど
いい方法無ですかね?
EnableをFalseにすると「若干」色が薄くなるようですが
もっとはっきり薄くできないですかね?
完全に消えるとまずいんだけど
はっきり「今これは使えません」って意思表示したいんだけど
いい方法無ですかね?
151デフォルトの名無しさん
2019/04/08(月) 20:13:53.30ID:DkSPe/Rf >>150
フォーム全体で対応させるのはわからない
コントロール一つならEnabledChangedのイベントで
コントロールに初めから組み込みたいのなら
https://dobon.net/vb/dotnet/control/tbenabledfalse.html
の「自分で描画する」を参考に。やっていることは真逆だけど色を変えればいいだけ
ボタンやラベルなら使用不可を示すのに色だけでなくフォントの打ち消し線の有無で実装したことならある
フォーム全体で対応させるのはわからない
コントロール一つならEnabledChangedのイベントで
コントロールに初めから組み込みたいのなら
https://dobon.net/vb/dotnet/control/tbenabledfalse.html
の「自分で描画する」を参考に。やっていることは真逆だけど色を変えればいいだけ
ボタンやラベルなら使用不可を示すのに色だけでなくフォントの打ち消し線の有無で実装したことならある
152デフォルトの名無しさん
2019/04/09(火) 00:07:36.04ID:pirXsPL0 Window上にOpacity薄くしたパネルを全面表示すればいいんじゃないか
153デフォルトの名無しさん
2019/04/09(火) 00:09:31.21ID:d/2DcaK3 テンプレに「酔っぱらいはレス禁止」って付け加えておいた方がいいな
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【インバウンド】中国からの“渡航自粛”…ツアー1000人分の直前キャンセル「キャンセル料は免除してくれ」 ことしいっぱいキャンセルに [1ゲットロボ★]
- 【芸能】日中関係悪化でエンタメ業界に大ダメージ… JO1の中国でのイベント中止、邦画は公開延期、STARTOアイドルへの影響も [冬月記者★]
- 「国民の憤りを引き起こした」中国側“高市首相発言の撤回改めて要求” [どどん★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- 【ローソン】ロゴの「L」で誤解生んだコーヒーカップ、デザイン変更へ 在庫使い切る3か月後にリニューアル [ぐれ★]
- パラドゲーやってる人に聞きたい総理の発言がそのまま国家意思になるって中世かよ [279479878]
- 【高市早苗】バス会社、中国からのキャンセルで12月で2000万円~3000万円の損失へ [115996789]
- 米シンクタンク「アメリカは台湾問題で"あいまい戦略"を取っている。高市早苗はこの方針から逸脱している」 [603416639]
- かしこいワンコっていうVtuberの子知ってる?
- 岡田克也「軽々しく存立危機事態とか言うべきじゃない」高市早苗「台湾で武力攻撃が発生したらどう考えても日本の存立危機事態」 [931948549]
- 俺が「う~寒い寒い」って言いながらお前らが寝てるお布団に潜り込んだら…
