DOBON.NETプログラミング道掲示板

■ 「新規作成」から投稿できます。
■ マルチポストされた投稿を見つけたときは、その投稿に返信することによりご報告ください。その際は匿名で投稿し、マルチポストされている場所を併記してください。
■ スパム対策のため、メールアドレスの先頭に"_"という文字が付加されています。
RSS 2.0 RSS 2.0 | RSS 0.91 | 携帯電話用 | 自分専用のアイコンを使用するには | 掲示板への要望 | 管理人に連絡 | お気楽掲示板
■ 24時間以内に作成されたスレッドは New で表示されます。
■ 24時間以内に更新されたスレッドは UpDate で表示されます。

記事リスト ( )内の数字はレス数
NomalDataGridViewの複数行選択で歯抜け選択を無効にしたい(2) | Nomal証券会社へのログイン(1) | Nomalユーザーフォームに埋め込んだAutoCADの変化を捉える(0) | Nomalシステムドライブ以外へのページング設定が反映されない(5) | Nomalブラウザでコピーした透過PNGを貼り付けたい(4) | Nomalforeachでループ回数を取得(2) | Nomalbitmapが保存できない(2) | Nomal特定ピクセルで画像を読み込みたい(2) | NomalDataGridViewでAlt+Enterで改行したい(2) | Nomal全角シフト中にアクセスキーが効かない(5) | NomalDataAdapter.Updateで構文エラー(6) | Nomal抽象クラスで実装したクラスの情報を知る(3) | NomalProcessクラスからbatファイル実行後、KILLできない(2) | Nomal画面遷移(モーダルとモードレス)(2) | Nomal兆億万表記の文字列を数値に変換できる?(3) | NomalGetDirectoriesでルートを指定するとエラーになる(3) | NomalLinqにおける明示的型指定の方法(3) | Nomal2つのradの数値から1つの角度を求めるコードを改善できますか?(C++)(2) | Nomalコンソールアプリで、WebView2の利用(2) | NomalEntity Frameworkは、使えるか?(2) | Nomalデータベースからのテーブル名一覧の効率的な取得方法(3) | NomalC#のlong型でオーバーフローになる(2) | Nomal正規表現のパターン表記方法(2) | NomalWebView2によるスクレ―ピング(4) | Nomalこういた物を作れますか?(2) | Nomalツールボックスにtableadapterが表示されない(1) | NomalC# Chart X軸上のグラフ表示(3) | NomalVB.NETでBluetoothデバイスの電池残量を取得する方法(3) | Nomalクリスタルレポート 明細部のサブレポート(0) | Nomal重なったPictureBox同士を透過する方法(7) | NomalWindowsフォームデザイナについて(3) | NomalVB.NETからcmdでpingを実行した時の結果(5) | Nomalvb.netでExcelファイル操作(7) | Nomalvb.netでのExcelファイルそうさ(2) | Nomalキーボード+バーコードでキーボード入力を無効にしたい(6) | Nomalファイルとして配置したマニフェストを優先したい(2) | NomalTabPageの背景色(5) | NomalVB2022でクリスタルレポートが開けない(2) | NomalC#でJpeg圧縮のTiffファイルを作成したい(4) | Nomalエクセルのみ監視ができない(2) | NomalDataGridViewのVirtualModeを有効した場合の実装方法(4) | NomalExcelの数値 -> 日付みたいな関数?(2) | NomalDrawstringでの透過文字作成(3) | Nomaljumbo icon(256x256)が存在するか知る方法(6) | NomalSpinWait()を使う理由(2) | Nomalantecedentってなんですか?(2) | Nomalワンタイムパスワードのサイトに自動ログインしてアクセストークンを得る(3) | Nomalstyle.displayだと効率悪いから違うやり方をしたいです。(5) | Nomalテーブルを順番通りに直すプログラムを外部で読み込めるようにしたいです。(4) | NomalJSONの複雑な入れ子内部の値を取りたい。(3) | Nomalグリッド表示レコードをJSONに変換(5) | Nomalシステム時計の設定(3) | NomalSeleniumで開いているページのTableを編集したい(5) | Nomalソケット通信入門 ひらがな(4) | NomalVisual Basicでエラーが出る(3) | Nomalインストーラにて、ローミングフォルダにファイルを配置したい(0) | NomalRGB値の所得(2) | NomalVB.net からAccessDBへの接続(2) | Nomal時間変数(文字列)の扱い(4) | Nomal画像のスクロール(6) | Nomalタイマーの一括処理(6) | NomalTreeViewとDataGridViewのスクロールを同期(シンクロ)させたい(4) | NomalTreeViewの現在位置とDataGridViewの現在位置を合わせたい(7) | Nomalフォームのリサイズ時にDataGridViewが再描画されない(4) | NomalPDFをフォーム上で表示させる方法につきまして(4) | NomalPictureBoxの画像を連続保存(11) | NomalテキストボックスのValidatingイベントよりも先に発生するボタン発生イベントは何でしょう?(2) | Nomal継承元フォームで各フォームのボタン動作を検知したい(3) | NomalWindowsエクスプローラからのドラッグ&ドロップ(2) | Nomalラジオボタンの一括設定(7) | Nomalクリックイベントでexeを作成できるか(2) | Nomal作成した白黒画像をWordに貼り付けてから「図として保存」(8) | Nomalアセンブリ情報が載らない(1) | NomalRichTextBoxのテキストをpictureBOXへ(12) | Nomalc#で日付型の定義の仕方で質問があります。(2) | Nomal先頭に空白(スペース)があるファイルを読み込んでRichTextBoxへ書き出すとスペースが削除える(6) | NomalExcel Com オブジェクトの増殖(13) | Nomal二次元マップから値の取得(1) | NomalアプリでHDMIへ出す解像度を変えたい(4) | NomalDataGridViewのドロップダウンリストの表示と選択後の値を分けたい(1) | Nomal列車の時間ごとの位置情報を表示したいです。(2) | Nomal画像の中心を基点に回転(4) | NomalDataGridViewの行ヘッダーに行番号を表示した時のエラー(4) | NomalタッチキーボードでIMEを自動で切替えたい(6) | NomalVSTOによるエクセルアドインのインストーラーでのアップデート(1) | NomalMP4動画を再生する方法について(5) | NomalVB.NetでVB6.0と同じFontを指定しても同様に印刷されない(9) | NomalLabelで文字単位の背景色(7) | NomalLableのカラー色を文字変数から変更したい(5) | NomalUrlにアクセスするとダウンロードされるファイルを捕まえる(2) | Nomalタブレット等でスワイプによるスクロールを実装(2) | NomalTEXTBOXのプロパティを文字列に(7) | NomalPDFをフォーム上で表示させる方法につきまして(6) | NomalChart X軸上の描画を切り替えたい(0) | NomalRichTextBoxへのドラッグ&ドロップしたExcelファイルの扱い(3) | Nomal特定のPCだけ発生する「パディングは無効なので削除できません」のエラーの原因(6) | NomalASP.NET WebApi内でXmlReader.Create(url)がタイムアウトする(4) | NomalDatagridViewでファンクションキーを止めたい(5) | Nomal表示動作が重くなる(3) | NomalDataGridViewの特定セルにボタンを配置する方法(5) |



■記事リスト / ▼下のスレッド
■35563 / 親記事)  GetDirectoriesでルートを指定するとエラーになる
□投稿者/ DISP 一般人(1回)-(2023/12/17(Sun) 13:40:39)
  • アイコン環境/言語:[Microsoft Visual Studio Community 2019 / VB.NET] 
    分類:[.NET] 

    Dim sub_Folders As String() = System.IO.Directory.GetDirectories(Me.OutputTextBox.Text, "*", System.IO.SearchOption.AllDirectories)
    でG:\ドライブ直下のフォルダ一覧を取得しようとしたのですが、
    ------------------------------------------------
    System.UnauthorizedAccessException
    HResult=0x80070005
    Message=パス 'G:\System Volume Information' へのアクセスが拒否されました。
    Source=<例外のソースを評価できません>
    スタック トレース:
    <例外のスタック トレースを評価できません>
    ------------------------------------------------
    というエラーが出てしまいます。
    Me.OutputTextBox.Textには「G:\」という文字列が入っています。
    試しに
    Dim sub_Folders As String() = System.IO.Directory.GetDirectories("D:\\", "*", System.IO.SearchOption.AllDirectories)
    と変えてみたら通ったので「G:\\」にしてみると同じエラーになってしまいます。

    GドライブはUSB接続のSSDドライブ、Dドライブは内蔵HDDです。両方ともNTFSフォーマットです。
    外部ドライブのときは何か指定とか必要なのでしょうか。

違反を報告
引用返信

▽[全レス3件(ResNo.1-3 表示)]
■35565 / ResNo.1)  Re[1]: GetDirectoriesでルートを指定するとエラーになる
□投稿者/ Azulean 大御所(541回)-(2023/12/17(Sun) 20:39:55)
  • アイコンNo35563に返信(DISPさんの記事)
    > Dim sub_Folders As String() = System.IO.Directory.GetDirectories(Me.OutputTextBox.Text, "*", System.IO.SearchOption.AllDirectories)
    > でG:\ドライブ直下のフォルダ一覧を取得しようとしたのですが、
    > ------------------------------------------------
    > System.UnauthorizedAccessException
    > HResult=0x80070005
    > Message=パス 'G:\System Volume Information' へのアクセスが拒否されました。
    (略)
    > というエラーが出てしまいます。

    そういうものです。
    ドライブのルートには、システム用に隠されたフォルダーが存在しています。
    このフォルダーを含めて「すべてサブフォルダーを取得」と実行すると、アクセス権がないのでエラーになります。

    > GドライブはUSB接続のSSDドライブ、Dドライブは内蔵HDDです。両方ともNTFSフォーマットです。
    > 外部ドライブのときは何か指定とか必要なのでしょうか。

    G:\ だろうと、D:\ だろうと、C:\ だろうと、同様にエラーが起きるはずです。
    このため、ドライブルートからまとめて AllDirectories を実行するのは避け、TopDirectoryOnly を用いて、例外をキャッチしながら列挙することを考えてください。
違反を報告
引用返信
■35568 / ResNo.2)  Re[2]: GetDirectoriesでルートを指定するとエラーになる
□投稿者/ DISP 一般人(3回)-(2023/12/18(Mon) 06:38:09)
  • アイコン2023/12/18(Mon) 06:39:14 編集(投稿者)

    No35565に返信(Azuleanさんの記事)
    うーん、そういうものなのですが。
    ありがとうございます。
解決み!
違反を報告
引用返信
■35570 / ResNo.3)  Re[3]: GetDirectoriesでルートを指定するとエラーになる
□投稿者/ Hongliang 大御所(650回)-(2023/12/18(Mon) 16:27:24)
  • アイコン.NET 5以降であれば、EnumerationOptionsというクラスが用意されていて、これにIgnoreInaccessibleプロパティがあるので、これをGetDirectoriesに渡すことでアクセスできないフォルダを無視することもできるようになっているのですが。
解決み!
違反を報告
引用返信

■記事リスト / レス記事表示 → [親記事-3]



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35559 / 親記事)  Linqにおける明示的型指定の方法
□投稿者/ Wan 付き人(93回)-(2023/12/14(Thu) 10:38:25)
  • アイコン環境/言語:[VisualBasic2022 Windows10 C# .NET6] 
    分類:[.NET] 

    VB.Netでは、下記のコードが問題無く動きます。
    Dim Result As List(Of List(Of String))
    Result = doc.QuerySelectorAll("#container table")(0).QuerySelectorAll("tr").Select(Function(n) n.QuerySelectorAll("th,td").Select(Function(g) g.TextContent).ToList).ToList

    しかし、C#に移植すると、一つ目のSelectで、「型引数を使い方から推論することはできません。型引数を明示的に指定してください。」とエラーがでます。
    List<List<string>> result = new();
    result= doc.QuerySelectorAll("#container table")[0].QuerySelectorAll("tr").Select( n => n.QuerySelectorAll("th,td").Select(g => g.TextContent).ToList).ToList;

    下記のHPをみると、一つ目のSelectでSelect<キャストする内容を書く>とありますが、何を書けば良いのか?さっぱりわかりません。
    https://qiita.com/noutarins/questions/5c12cdbd694276f598ee
    weponDates.OrderBy(x => x.GetobjectNumber)
    weponDates.OrderBy<WeponDate, int>(x => x.GetobjectNumber)

    どなたか?詳しい方教えて頂けないでしょうか?
    なぜ?VBではOKなのに、C#では、ダメなんでしょうか?
    宜しくお願い致します。

違反を報告
引用返信

▽[全レス3件(ResNo.1-3 表示)]
■35560 / ResNo.1)  Re[1]: Linqにおける明示的型指定の方法
□投稿者/ Hongliang 大御所(649回)-(2023/12/14(Thu) 12:09:20)
  • アイコン2023/12/14(Thu) 12:13:20 編集(投稿者)
    2023/12/14(Thu) 12:12:33 編集(投稿者)

    .NETの標準ライブラリにQuerySelectorAllというメソッドを持つ型は存在しないように思うのですが、何らかの外部ライブラリを使っているのであれば提示していただきたいですね。

    > result= doc.QuerySelectorAll("#container table")[0].QuerySelectorAll("tr").Select( n => n.QuerySelectorAll("th,td").Select(g => g.TextContent).ToList).ToList;
    恐らくですが、型推論できないのは、ToListがメソッド呼び出しではなくメソッド自体を返しているのが原因です。
    C#の場合、引数がない場合のメソッド呼び出しに際して括弧を省略することはできません。
    .ToList()
    と記述する必要があります。
    こうすることでSelectに渡すラムダ式の返値がstringであると推論できるようになります。

    括弧を使わずにhoge.ToListとだけ記述した場合、VBでいうところの
    AddressOf hoge.ToList
    みたいな意味になります。
違反を報告
引用返信
■35561 / ResNo.2)  Re[1]: Linqにおける明示的型指定の方法
□投稿者/ 魔界の仮面弁士 大御所(1568回)-(2023/12/14(Thu) 13:23:38)
  • アイコンNo35559に返信(Wanさんの記事)
    > = doc.QuerySelectorAll(
    変数 doc の型は何ですか?

    QuerySelectorAll メソッドを持つ HTML Parser ということは、
    System.Windows.Forms.HtmlDocument や
    HtmlAgilityPack.HtmlDocument ではなさそうですし、
    可能性としては
    Aspose.Html.HTMLDocument か
    AngleSharp.Html.Dom.IHtmlDocument が
    思い当たりますが、もしかしたら他のパーサーかもしれません。


    > Dim Result As List(Of List(Of String))
    > Result = doc.QuerySelectorAll("#container table")(0).QuerySelectorAll("tr").Select(Function(n) n.QuerySelectorAll("th,td").Select(Function(g) g.TextContent).ToList).ToList
    この構文だと、AngleSharp の可能性が高そうですが…違っていたらすみません。

    そして上記は、正確には .ToList ではなく .ToList() と書いた方が望ましいです。
    ただし VB では「引数の無いメソッド」では括弧を省略できるので、省略しても間違いではありません。


    > List<List<string>> result = new();
    VB に合わせるなら、「= new()」が余計だと思いますよ?
    あるいはせめて「= default!」かと。

    > result= doc.QuerySelectorAll("#container table")[0].QuerySelectorAll("tr").Select( n => n.QuerySelectorAll("th,td").Select(g => g.TextContent).ToList).ToList;
    VB と違って、C# ではメソッド呼び出し時の括弧を省略できません。(COM 参照だと許可されるケースもあるけれど)
    つまり、.ToList ではなく .ToList() です。

    「).ToList).ToList;」→「).ToList()).ToList();」
違反を報告
引用返信
■35562 / ResNo.3)  Re[1]: Linqにおける明示的型指定の方法
□投稿者/ Wan 付き人(94回)-(2023/12/15(Fri) 08:50:29)
  • アイコンHongliang様
    魔界の仮面弁士様
    いつも御指南ありがとうございます。

    お二方のご指摘の通り、()を付けただけで解決しました。
    外部ライブラリは、ご指摘の通り、AngleSharpです。情報が不足しており申し訳ありませんでした。

    Linqを書く時に、前のメソッドが何を返すのかを気にして次のメソッドを書いていたので型推論も同じようにしていると勘違いしていました。

    ありがとうございます。
解決み!
違反を報告
引用返信

■記事リスト / レス記事表示 → [親記事-3]



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35556 / 親記事)  2つのradの数値から1つの角度を求めるコードを改善できますか?(C++)
□投稿者/ キリシロ 一般人(1回)-(2023/12/01(Fri) 19:19:45)
  • アイコン環境/言語:[環境(エディション:Windows 11 Home バージョン:21H2)、使用言語(C++)、使用ソフト(Visual Studio 2022)] 
    分類:[.NET] 

    <目的>
    すでに、コードは完成したが角度を求める式を改善できるのではないかと思う。

    <このコードの目的>
    操作するためのキー入力(縦方向と横方向)を取得した際に、この二つの値(rad)を送ると操作対象の進行方向を0〜360度の間で求める関数を作成したい。

    <このコードの考え>
    rtanは、下が-1からはじまり、上の1までの縦軸の値と考える
    1

    rtan

    -1
    rcosは、左が-1からはじまり、右の1までの横軸の値と考える

    -1 → rcos → 1

    そうすることでこの二つの変数は十字の関係になり、角度が求められる。

    ................1
    ..............↑
    -1 → angle → 1
    ..............↑
    ..............-1

    ................90
    ................↑
    180 → angle → 0
    ................↑
    ..............270

    <送られてくる変数の範囲>
    -1.0 <= rtan,rcos <= 1.0

    <コード>
    double Function::AfTC(double rtan, double rcos)
    {
    double ctan = atan(rtan) * (double)180 / PI;
    double ccos = acos(rcos) * (double)180 / PI;
    double angle = (ccos == (double)0 ? (ctan < (double)0 ? (double)360 + ctan : ctan) : (ccos - ctan) * ((double)180 / ccos));
    return angle;
    }

    <入力例>
    1:rtan = 1.0, rcos = 0.0
    2:rtan = 0.0, rcos = -1.0
    3:rtan = -1.0, rcos = 0.0
    4:rtan = 0.0, rcos = 1.0
    5:rtan = 1.0, rcos = -1.0
    6:rtan = 1.0, rcos = 1.0
    7:rtan = -1.0, rcos = 1.0

    <出力例>
    1:angle = 90
    2:angle = 180
    3:angle = 270
    4:angle = 0
    5:angle = 135
    6:angle = 45
    7:angle = 315

    <追記>
    一通り注意事項を読んで投稿しましたが、足りていない部分がありましたらご指摘のほどよろしくお願いいたします。
違反を報告
引用返信

▽[全レス2件(ResNo.1-2 表示)]
■35557 / ResNo.1)  Re[1]: 2つのradの数値から1つの角度を求めるコードを改善できますか?(C++)
□投稿者/ kiku 一般人(3回)-(2023/12/11(Mon) 09:34:48)
  • アイコンNo35556に返信(キリシロさんの記事)

    下記の考え方で計算できそうです。

    rcosをXとする。rtanをYとする。
    X、Y共に、-1.0から+1.0の値を取るとする。
    2次元平面上に、点(X,Y)をプロットし、
    その点までの角度を求める。

    ●X=0の場合
    ・Y>0ならば、90[度]
    ・Y=0ならば、0[度]
    ・Y<0ならば、270[度]

    ●X>0の場合
    ・Y>=0ならば、ATAN(Y/X)*180/PI[度]
    ・Y<0ならば、ATAN(Y/X)*180/PI+360[度]

    ●X<0の場合
    ・ATAN(Y/X)*180/PI+180[度]

違反を報告
引用返信
■35558 / ResNo.2)  Re[2]: 2つのradの数値から1つの角度を求めるコードを改善できますか?(C++)
□投稿者/ キリシロ 一般人(2回)-(2023/12/11(Mon) 16:54:03)
  • アイコンkikuさん、返信ありがとうございます。
    「送られてくる2つの変数を座標の点として見る」という考え方にまさにその通りと、思いました。
    それと、その考え方を元にコードを書いてみましたが、問題なく動作しましたし、コードも見やすくなりました。
    一応、書いたコードを載せて置きます。
    <コード>
    double Function::AfTC(double y, double x)
    {
    double angle;

    if (x > 0.0)
    {
    if (y < 0.0)
    angle = atan(y / x) * 180.0 / PI + 360.0;
    else
    angle = atan(y / x) * 180.0 / PI;
    }
    else if (x < 0.0)
    {
    angle = atan(y / x) * 180.0 / PI + 180.0;
    }
    else
    {
    if (y > 0.0)
    angle = 90.0;
    else if (y < 0.0)
    angle = 270.0;
    else
    angle = 0.0;
    }

    return angle;
    }
解決み!
違反を報告
引用返信

■記事リスト / レス記事表示 → [親記事-2]



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35553 / 親記事)  コンソールアプリで、WebView2の利用
□投稿者/ Wan 付き人(91回)-(2023/11/24(Fri) 12:08:04)
  • アイコン環境/言語:[Windows10 C# Core] 
    分類:[.NET] 

    下記のHPに、次の記載があります。

    https://learn.microsoft.com/ja-jp/microsoft-edge/webview2/concepts/threading-model

    「WebView2 は、メッセージ ポンプを使用する UI スレッドに作成する必要があります。 すべてのコールバックはそのスレッドで行われ、WebView2 への要求はそのスレッドで行う必要があります。 別のスレッドから WebView2 を使用しても安全ではありません」とあります。

    一方、下記のHPには、コンソールアプリには、メッセージポンプが無いと記載されています。

    https://learn.microsoft.com/ja-jp/dotnet/standard/building-console-apps

    「コンソール アプリケーションには、既定で起動されるメッセージ ポンプがありません。」

    これって、使う方法が無いという事でしょうか?
    何か?抜け道って存在しますでしょうか?


違反を報告
引用返信

▽[全レス2件(ResNo.1-2 表示)]
■35554 / ResNo.1)  Re[1]: コンソールアプリで、WebView2の利用
□投稿者/ KOZ 一般人(30回)-(2023/11/24(Fri) 13:01:31)
  • アイコンNo35553に返信(Wanさんの記事)
    > 何か?抜け道って存在しますでしょうか?

    Console アプリでも Windows Forms を使えます。
    手順は以下を参照してください。

    「.NET アプリケーションでWindowsフォームを利用する」
    https://blog.yucchiy.com/2021/08/dotnet-windows-form/


違反を報告
引用返信
■35555 / ResNo.2)  Re[2]: コンソールアプリで、WebView2の利用
□投稿者/ Wan 付き人(92回)-(2023/11/24(Fri) 14:06:29)
  • アイコンKOZ様

    できました。
    WindowsFおrmを利用してなんとかなりそうです。
    ありがとうございました。


解決み!
違反を報告
引用返信

■記事リスト / レス記事表示 → [親記事-2]



■記事リスト / ▲上のスレッド
■35550 / 親記事)  Entity Frameworkは、使えるか?
□投稿者/ Wan 付き人(89回)-(2023/11/23(Thu) 20:05:48)
  • アイコン環境/言語:[Core] 
    分類:[.NET] 

    さすがに、限界を感じ、VB→C#、WebClient→WebView2、ACCESS→SQL Server、Framewark→Coreに移行を始めました!
    Entity Frameworkへの挑戦もやるべきでしょうか?
    遅くなるって、ネットで見たのですが?個人レベルでは、余り問題にならないかな?
    って思っています。お勧めのサイトなどありますでしょうか?


違反を報告
引用返信

▽[全レス2件(ResNo.1-2 表示)]
■35551 / ResNo.1)  Re[1]: Entity Frameworkは、使えるか?
□投稿者/ shu 大御所(504回)-(2023/11/24(Fri) 07:30:54)
  • アイコン何をするのかにもよると思いますが

    WebClient→WebView2
    ACCESS→SQL Server
    Framewark→Core(.NET6以降)

    だけでよいと思います。
違反を報告
引用返信
■35552 / ResNo.2)  Re[2]: Entity Frameworkは、使えるか?
□投稿者/ Wan 付き人(90回)-(2023/11/24(Fri) 12:00:07)
  • アイコンshu 様
    御指南ありがとうございます。

    御指南通り、余り、手を広げずに、基礎力を高めたいと思います。
    ありがとうございました。

解決み!
違反を報告
引用返信

■記事リスト / レス記事表示 → [親記事-2]






Mode/  Pass/


- Child Tree -