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

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

記事リスト ( )内の数字はレス数
Nomalftp接続してファイルアップロード後、別フォルダにコピー(4) | Nomalリソースデザイナの開き方(9) | NomalDataGridViewのイベント中にデータを更新するとエラーが発生(2) | Nomalフォントに登録されていない文字の検出(2) | NomalGetObjectでExcelファイルを加工するとExcelファイルが壊れる(9) | Nomaloledbでdatatableを取得するときにエラーになる(1) | Nomal作成した白黒画像をWordに貼り付けてから「図として保存」(8) | NomalVB.NetでVB6.0と同じFontを指定しても同様に印刷されない(9) | 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) | Nomal画面遷移(モーダルとモードレス)(2) | NomalProcessクラスからbatファイル実行後、KILLできない(2) | NomalGetDirectoriesでルートを指定するとエラーになる(3) | Nomal兆億万表記の文字列を数値に変換できる?(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でExcelファイル操作(7) | NomalVB.NETからcmdでpingを実行した時の結果(5) | Nomalvb.netでのExcelファイルそうさ(2) | Nomalキーボード+バーコードでキーボード入力を無効にしたい(6) | NomalVB2022でクリスタルレポートが開けない(2) | Nomalファイルとして配置したマニフェストを優先したい(2) | NomalTabPageの背景色(5) | NomalC#でJpeg圧縮のTiffファイルを作成したい(4) | Nomalエクセルのみ監視ができない(2) | NomalDataGridViewのVirtualModeを有効した場合の実装方法(4) | NomalExcelの数値 -> 日付みたいな関数?(2) | Nomaljumbo icon(256x256)が存在するか知る方法(6) | NomalDrawstringでの透過文字作成(3) | 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) | Nomal時間変数(文字列)の扱い(4) | NomalVB.net からAccessDBへの接続(2) | Nomal画像のスクロール(6) | Nomalタイマーの一括処理(6) | NomalTreeViewとDataGridViewのスクロールを同期(シンクロ)させたい(4) | NomalTreeViewの現在位置とDataGridViewの現在位置を合わせたい(7) | NomalPictureBoxの画像を連続保存(11) | NomalDataGridViewの特定セルにボタンを配置する方法(5) | Nomalフォームのリサイズ時にDataGridViewが再描画されない(4) | NomalテキストボックスのValidatingイベントよりも先に発生するボタン発生イベントは何でしょう?(2) | NomalPDFをフォーム上で表示させる方法につきまして(4) | NomalDataGridViewの行ヘッダーに行番号を表示した時のエラー(4) | Nomal継承元フォームで各フォームのボタン動作を検知したい(3) | Nomalラジオボタンの一括設定(7) | NomalWindowsエクスプローラからのドラッグ&ドロップ(2) | NomalRichTextBoxのテキストをpictureBOXへ(12) | Nomalクリックイベントでexeを作成できるか(2) | Nomalアセンブリ情報が載らない(1) | Nomal先頭に空白(スペース)があるファイルを読み込んでRichTextBoxへ書き出すとスペースが削除える(6) | Nomalc#で日付型の定義の仕方で質問があります。(2) | NomalExcel Com オブジェクトの増殖(13) | Nomal二次元マップから値の取得(1) | NomalアプリでHDMIへ出す解像度を変えたい(4) | Nomal列車の時間ごとの位置情報を表示したいです。(2) | Nomal画像の中心を基点に回転(4) | NomalDataGridViewのドロップダウンリストの表示と選択後の値を分けたい(1) | NomalタッチキーボードでIMEを自動で切替えたい(6) | NomalVSTOによるエクセルアドインのインストーラーでのアップデート(1) | NomalMP4動画を再生する方法について(5) | NomalUrlにアクセスするとダウンロードされるファイルを捕まえる(2) | NomalLableのカラー色を文字変数から変更したい(5) | NomalLabelで文字単位の背景色(7) | NomalTEXTBOXのプロパティを文字列に(7) | Nomalタブレット等でスワイプによるスクロールを実装(2) | NomalPDFをフォーム上で表示させる方法につきまして(6) |



■記事リスト / ▼下のスレッド
■35662 / 親記事)  ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ みーちょ 一般人(1回)-(2025/03/24(Mon) 03:36:34)
  • アイコン環境/言語:[Windows11 / vb.net2022] 
    分類:[.NET] 

    いつもお世話になっております。
    以下の処理を行いたいのですが、やり方が分からず躓いております。


    1 ftpサーバに接続してファイルをアップロード
      対象ディレクトリ ftp://test/aaa/ 
      ※ftp接続可能なフォルダ。実際のパスはc:\ftp\test\aaa

    2 ファイルアップロード後、直接ftp接続できないフォルダ
      D\bbb
      に移動し、システム日付(yyyymmdd)のフォルダを作成

    3 2のフォルダに、1でアップロードしたファイルをコピー


    1は、こちらのサイトの「FTPサーバーにファイルをアップロードする」でできましたが、2以降ができません。。。
    chコマンドみたいなのでフォルダ移動できないかと思ったのですが、ftpサーバ側でのchコマンド実行のやり方がわからず、躓いております。
    ftp接続できないフォルダ参照はできないのでしょうか?
    もしできるのなら、やり方を教えていただきたく、何卒よろしくお願いいたします。



違反を報告
引用返信

▽[全レス4件(ResNo.1-4 表示)]
■35663 / ResNo.1)  Re[1]: ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ KOZ 一般人(40回)-(2025/03/24(Mon) 05:00:56)
  • アイコンNo35662に返信(みーちょさんの記事)
    > ftp接続できないフォルダ参照はできないのでしょうか?

    できません。出来たら問題です。

    > もしできるのなら、やり方を教えていただきたく、何卒よろしくお願いいたします。

    サーバーのフォルダを共有するしかないと思いますよ。
違反を報告
引用返信
■35664 / ResNo.2)  Re[2]: ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ みーちょ 一般人(2回)-(2025/03/24(Mon) 06:13:11)
  • アイコン
    >>ftp接続できないフォルダ参照はできないのでしょうか?
    > できません。出来たら問題です。
    あう、やっぱだめですかぁ。
    私が知らないだけかもと、一縷の望みというか希望をもってたのですが。


    >>もしできるのなら、やり方を教えていただきたく、何卒よろしくお願いいたします。
    > サーバーのフォルダを共有するしかないと思いますよ。
    セキュリティの関係でNGくらったのです。
    もっかい上司と相談してみます。

    ちなみに、chじゃなくてcdコマンドでしたね。。。恥ずかし///
違反を報告
引用返信
■35665 / ResNo.3)  Re[3]: ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ kiku 一般人(1回)-(2025/03/24(Mon) 11:17:46)
  • アイコンNo35664に返信(みーちょさんの記事)
    >
    > >>ftp接続できないフォルダ参照はできないのでしょうか?
    >>できません。出来たら問題です。
    > あう、やっぱだめですかぁ。
    > 私が知らないだけかもと、一縷の望みというか希望をもってたのですが。

    FTPサーバ上に、常時起動しているサービスやアプリなどをおいて、
    そのアプリが、c:\ftp\test\aaaを監視して、
    追加された場合、D\bbbへコピーすることをすれば
    実現できそうです。
違反を報告
引用返信
■35666 / ResNo.4)  Re[3]: ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ 魔界の仮面弁士 大御所(1588回)-(2025/03/24(Mon) 11:38:42)
  • アイコンNo35664に返信(みーちょさんの記事)
    > セキュリティの関係でNGくらったのです。
    > もっかい上司と相談してみます。
    1) そもそも何故、時代遅れの FTP が選択されているのかを確認した方が良いでしょう
    2) どうしても FTP が必要なら、存在はしているが列挙されない不可視ディレクトリを使って
     公開フォルダーを見せないようにすることもできます(とはいえ、FTP が脆弱であることは変わりません)
    3) サーバーによっては QUOTE サブコマンドを通じて、非標準の独自コマンドで通信できるケースもあります


    > 1 ftpサーバに接続してファイルをアップロード
    FTP (RFC959) はセキュリティ的に脆弱なので、
    FTPS (RFC4217) あるいは
    SFTP (RFC4251) を採用した方が望ましいと思いますよ。

    FTP は、パスワードは暗号化されずに平文で通信されるため、
    盗聴や改竄に対して脆弱であり、現在では推奨されないプロトコルです。

    FTPS の場合、通信の暗号化のために、認証局で署名されたサーバー証明書を必要とします。
    そのためランニングコストが発生しますが、IIS でもサポートされているプロトコルです。
    VB 側から FTPS で送受信するためには、FtpWebRequest クラス を使えます。
    開発のために、一時的に無償のオレオレ証明書でテストするならこんな感じです。
    https://www.chuken-engineer.com/entry/2019/09/25/135516

    SFTP の場合は SSH 上で FTP する方式であり、認証局への申請が不要となるため、
    追加費用が発生しません。個人的には SFTP を推奨しておきます。
    IIS ではサポートされていませんが、Windows Server でも OpenSSH などで導入可能です。
    .NET からの送受信には、SSH.NET が用いられることが多いです。
    https://sorceryforce.net/ja/tips/sftp-ssh-net-basic

    なお定例的な送受信であれば、VB にて実行する代わりに WinSCP を
    コマンドライン実行することで FTP/FTPS/SFTP 通信を行わせることもできます。
    https://winscp.net/eng/docs/lang:jp
違反を報告
引用返信

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



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35652 / 親記事)  リソースデザイナの開き方
□投稿者/ な55 一般人(1回)-(2025/02/25(Tue) 10:59:44)
  • アイコン環境/言語:[Visual Studio 2022のvb] 
    分類:[.NET] 

    初めて質問させていただきます。
    先程、投稿したのですが、消えてしまったみたいで、再度投稿します。

    Visual Studio 2022 Version 17.13.1で、

    リソースにbmpを複数入れて、PictureBoxに表示したいのですが、

    リソースデザイナをどうやって表示させるのかがわかりません。

    よろしくお願いいたします。
違反を報告
引用返信

▽[全レス9件(ResNo.5-9 表示)]
■35657 / ResNo.5)  Re[5]: リソースデザイナの開き方
□投稿者/ 魔界の仮面弁士 大御所(1585回)-(2025/02/26(Wed) 01:59:35)
  • アイコン2025/02/26(Wed) 02:02:28 編集(投稿者)

    No35656に返信(な55さんの記事)
    > 添付ファイルの様な画面が表示されます。

    Visual Studio 2022 のリソースエディタは、バージョン 17.11 以降で
    大幅に変更されているものの、初期には不具合報告も色々と…。
    現行の 17.13 なら、ある程度改善はされてきているようですが。
    https://github.com/dotnet/project-system/discussions/9474
    https://devblogs.microsoft.com/visualstudio/introducing-the-revamped-visual-studio-resource-explorer/?WT.mc_id=DT-MVP-8907
    https://learn.microsoft.com/ja-jp/visualstudio/ide/managing-application-resources-dotnet?WT.mc_id=DT-MVP-8907&view=vs-2022


    当方は事情があって、な55さんのような最新(17.13.1)ではなく、やや古い
     Visual Studio Enterprise 2022 (64 ビット) - Current
     Version 17.9.2
    というバージョンを使っていたので、リソースエディタが更新されていたことに
    気付くのが遅れてしまいました。

    別PC の 17.13.1 で確認したところ、ソリューション エクスプローラーにて
    [すべてのファイルを表示]モードにしてからリソースエディタを開くと
    [+]ボタンが使えることを確認できました。
    [すべてのファイルを表示]モードをオフにすると、何故か [+] が使えないという罠。


    そもそもの使い勝手が悪いようなら、ソリューション エクスプローラー上で
    "Resources.resx" ファイルを右クリックし、
    [ファイルを開くアプリケーションを選択]にて、
    『リソース エクスプローラー(既定値)』の代わりに
    『管理対象リソースディター(レガシ)』にて、旧版のエディタを使ってみるのも手です。
違反を報告
引用返信
■35658 / ResNo.6)  Re[6]: リソースデザイナの開き方
□投稿者/ な55 一般人(4回)-(2025/02/26(Wed) 09:09:47)
  • アイコンお世話になっております。

    > [すべてのファイルを表示]モードにしてからリソースエディタを開くと
    > [+]ボタンが使えることを確認できました。

    +ボタンが緑色になりました!
    (2日間悩みましたが、すべてのファイルを表示モードにしなくてはいけないとは・・・
    一人では解決できないです。ありがとうございました。)

    しかし、まだ問題が・・・

    +のボタンを押して、「新しいリソースの追加」で、

    名称 tokyo
    タイプ image

    として、
    「既存のファイルを追加」
    ボタンで、20bitカラーの200×200ぐらいのbmpを追加すると、

    「ソリューションエクスプローラー」のツリーに

    bin
    obj
    Resources <---これと
    tokyo.bmp <---これが追加になる

    が追加されます。リソースエクスプローラにも、bmpのサムネイルが出ています。




    formに「PictureBox1」を置いて、

    Form1のLoadプロシージャーに

    PictureBox1.Image=My.Resources.tokyo

    とコードを書くと、My.Resorces.tokyoの下に赤なみ線が付いてしまいます。
    (Resourcesとtokyoはインテリセンスに出てきます)

    実行してみると、

    「BC30311 型'Byte()'の値を'Image'に変換できません。」

    のエラーが出ます。

    よろしくお願いいたします。

違反を報告
引用返信
■35659 / ResNo.7)  Re[7]: リソースデザイナの開き方
□投稿者/ 魔界の仮面弁士 大御所(1586回)-(2025/02/26(Wed) 10:00:58)
  • アイコン2025/02/26(Wed) 10:49:25 編集(投稿者)

    No35658に返信(な55さんの記事)
    掲示板の利用ルールに
    >>> 半角カナは使用しないでください。文字化けの原因になります。
    と記載がありますので、次回以降ご留意ください。
    Shift_JIS だと 0xA1-0xDF の範囲の文字がそれにあたります。
    (気づきにくいですが、投稿文に Halfwidth Katakana Middle Dot が混入していますね)


    > Form1のLoadプロシージャーに
    > PictureBox1.Image=My.Resources.tokyo
    > とコードを書くと、My.Resorces.tokyoの下に赤なみ線が付いてしまいます。
    > 「BC30311 型'Byte()'の値を'Image'に変換できません。」

    従来版では、画像リソースは、実装上は Image オブジェクトを返すプロパティなのですが
    現状は、As Byte() なプロパティであるということなのですね。それはあまりに酷いですね。

    ImageConverter クラスを経由させれば、As Byte() から As Image にすることはできますが…。
    https://atmarkit.itmedia.co.jp/ait/articles/0706/07/news139.html


    As Byte() のままではデザイン時に画像リソースを Image プロパティに指定できなくなりますし、
    なにより今回のような破壊的な仕様変更だと、またどこかで As Image に戻る可能性もありそう。


    今、手元にバージョン 17.9.2 な環境しか無いので試せませんが、
    レガシ版のリソースエディターで画像を追加した場合も同じですか?
    また、Visual Studio 2022 17.14.0 Preview 1.1 だとどうでしょうか?

    あるいは下記のように、resx ファイルを XML として手動編集してみたら改善しますか?
    https://developercommunity.visualstudio.com/t/Drag-n-drop-images-into-new-Resource-Exp/10728068


    前回紹介した URL で、Microsoft 社の melytcさんが GitHub Discussions #9474 に投稿されていましたが
    不自然な点や使いにくい部分については、適宜フィードバックを投稿するなり、
    同種の投稿に対して vote up しておいた方が良いかと思います。
    ユーザーからの vote が多い案件は、改修優先度があがりやすくなります。


    Image は IDisposable であるにもかかわらず、My.Resources のプロパティは
    「取得するたびに、新しい Image インスタンスを生成してしまう」
    という、まるでメソッドのような動作をしてくるので、
    時には Byte 配列を返して欲しいと考えることもありますが、
    流石に、Image を返す機能が失われているのは改悪過ぎる…。
違反を報告
引用返信
■35660 / ResNo.8)  Re[8]: リソースデザイナの開き方
□投稿者/ な55 一般人(5回)-(2025/02/26(Wed) 10:45:28)
  • アイコン>Shift_JIS だと 0xA1-0xDF の範囲の文字がそれにあたります。
    >(気づきにくいですが、投稿文に Halfwidth Katakana Middle Dot が混入していますね)

    ・・・ですね。失礼しました。

    「管理対象リソースエディター(レガシ)」

    で、「PictureBox1.Image=My.Resources.tokyo」
    出来ました。

    レガシ版のリソースエディタの方が、bmpをWindowsのエクスプローラーからドラッグ&ドロップできて、いいですね。

    その他、ご指導いただいたやり方は今の私にはハードルが高すぎて、やっていません。
    もう少し理解が進んで、からやってみます。

    今回の件、いろいろありがとうございました。
解決み!
違反を報告
引用返信
■35661 / ResNo.9)  Re[9]: リソースデザイナの開き方
□投稿者/ 魔界の仮面弁士 大御所(1587回)-(2025/02/26(Wed) 13:11:29)
  • アイコン2025/02/26(Wed) 13:14:09 編集(投稿者)

    No35660に返信(な55さんの記事)
    > 「管理対象リソースエディター(レガシ)」
    暫くは、旧版のリソースエディターを使うことになりそうですね。
    同ダイアログの「既定値として設定」で既定のエディタを変更しておいても良いかも。

    ちなみに、VS2022 の旧バージョンでは
    「マネージド リソース エディター」と表記されていました。

    > その他、ご指導いただいたやり方は今の私にはハードルが高すぎて、やっていません。
    現在手元に環境が無いので確認できませんが、
    下記に掲載された画像(英語版、簡体中国語版)を見る限り、
    Image リソースを追加する際に、格納形式を指定するための
    ドロップダウンリスト欄があるように見えます。
    https://developercommunity.visualstudio.com/t/Cannot-add-images-to-resx/10745414
    https://developercommunity.visualstudio.com/t/After-updating-Visual-Studio-Community-2/10854404


    > 「PictureBox1.Image=My.Resources.tokyo」
    直近でも、画像リソースに関する別件の不具合報告が挙がっていました。
    文章は英語ですが、投稿者は日本人っぽい。
    https://developercommunity.visualstudio.com/t/VS2022-Unable-to-add-image-resource-to-/10843371

    中の人は、VS2022 version 17.12 で修正済みと報告しておられるものの、
    いまだに、VS2022 version 17.13.x 系でも問題が多いようで。
    https://developercommunity.visualstudio.com/t/Cannot-add-Image-to-be-of-type-Bitmap-as/10725066
    https://developercommunity.visualstudio.com/t/Can-not-browse-images-in-the-new-Resourc/10681028
    https://developercommunity.visualstudio.com/t/17111-ResourceExplorer-fails-to-load/10729675


    > もう少し理解が進んで、からやってみます。
    Visual Studio そのものの不具合に関する質問であれば、
    公式 X および開発コミュニティにて質問を受け付けているようです。

    https://twitter.com/VisualStudio
    https://developercommunity.visualstudio.com/VisualStudio

    既存の提案や報告で、「自身も同じ問題で困っている」というものがあれば、
    ぜひ、vote up ボタンを押して投票しておきましょう。

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

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



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35649 / 親記事)  DataGridViewのイベント中にデータを更新するとエラーが発生
□投稿者/ Pulsar 一般人(1回)-(2025/02/07(Fri) 14:46:00)
  • アイコン環境/言語:[c# .Net9.0] 
    分類:[.NET] 

    2025/02/07(Fri) 14:56:10 編集(投稿者)
    2025/02/07(Fri) 14:47:42 編集(投稿者)

    .Net9.0 c# Microsoft.Data.SqlClientを使用していますが
    DataGridViewにBindingSourceを使用してDataTableをバインドしています。
    CellContentClickイベント中にDataTableのデータを更新して
    BindingSourceのResetBindingsメソッドを実行すると
    CellContentClickイベントが終了したタイミングで
    System.NullReferenceException: 'Object reference not set to an instance of an object.'
    が発生します。

    .Net6.0 c# System.Data.SqlClientを使用していた時はエラーは発生しませんでした。
    (同じプログラムです。)

    回避策などがありましたらご教授ください。
違反を報告
引用返信

▽[全レス2件(ResNo.1-2 表示)]
■35650 / ResNo.1)  Re[1]: DataGridViewのイベント中にデータを更新するとエラーが発生
□投稿者/ 魔界の仮面弁士 大御所(1582回)-(2025/02/12(Wed) 10:15:57)
  • アイコンNo35649に返信(Pulsarさんの記事)
    > .Net9.0 c# Microsoft.Data.SqlClientを使用していますが
    .NET 9.0 ですか…。.NET 8.0 だと結果は変わりますか?

    STS である奇数バージョン(リリース後、18ヶ月間サポートされる)は、
    LTS である偶数バージョン(リリース後、36ヶ月間サポートされる)よりも
    ライフサイクルが短いため、8.0 にしてみるのも手かもしれません。
    https://dotnet.microsoft.com/ja-jp/platform/support/policy/dotnet-core


    > DataGridViewにBindingSourceを使用してDataTableをバインドしています。
    両バージョンの DataTable で WriteXml した場合、内容に差異がありますか?
    差異が無いのなら、SqlClient そのものが原因では無いのだと思います。

    その XML を ReadXml で読み取った DataTable をバインドした場合と、
    元の SqlClient から得た DataTable をバインドした場合とで
    結果に差があるかを確認してみてはいかがでしょう。


    > CellContentClickイベント中にDataTableのデータを更新して
    > BindingSourceのResetBindingsメソッドを実行すると
    > CellContentClickイベントが終了したタイミングで
    > System.NullReferenceException: 'Object reference not set to an instance of an object.'
    > が発生します。
    例外発生時に StackTrace の内容がどうなっているか、提示することはできますか?
    もしくは、「第三者が実験可能な最小限の検証用コード」を添付することは可能でしょうか。
    .NET はソースコードが公開されているため、そこから何かヒントが得られるかもしれません。

    https://source.dot.net/#System.Windows.Forms/System/Windows/Forms/Controls/DataGridView/DataGridView.cs
    https://github.com/dotnet


    また、CellContentClick の最中に BindingSource.ResetBindings() する代わりに、
    BeginInvoke などを用いて、「CellContentClick の完了後に BindingSource.ResetBindings()」されるように
    手順を変更してみるのはどうでしょうか。


    > .Net6.0 c# System.Data.SqlClientを使用していた時はエラーは発生しませんでした。

    一般的には「c#」ではなく「C#」と表記されることが多いです。
    以下、C# 関連規格書より引用:

    -----
    JIS X 3015:2008 "プログラム言語C#" [October 2008]
     「6 頭字語及び略語」
    より引用:
    > C#は,LATIN CAPITAL LETTER C (U+0043)の次に
    > NUMBER SIGN # (U+000D)を書く。
    -----
    ISO/IEC 23270:2018 "Information technology -- Programming languages -- C# (Third edition)" [December 2018]
     「4. Acronyms and abbreviations」
    および
    ECMA-334:2023 "C# language specification (7th edition)" [December 2023]
     「Introduction」
    より引用:
    > The name C# is written as the LATIN CAPITAL LETTER C (U+0043)
    > followed by the NUMBER SIGN # (U+000D).
違反を報告
引用返信
■35651 / ResNo.2)  Re[2]: DataGridViewのイベント中にデータを更新するとエラーが発生
□投稿者/ Pulsar 一般人(2回)-(2025/02/12(Wed) 15:43:35)
  • アイコンレスありがとうございます。

    本日Version 17.13.0のアップデートがあり、
    アップデート後にリビルドしたらエラーが出なくなりました。

    レスポンスの内容は勉強になりました。
    今後の対応に応用できるかと思います。

    ありがとうございました。

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

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



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35633 / 親記事)  フォントに登録されていない文字の検出
□投稿者/ Iraquser 一般人(1回)-(2024/11/14(Thu) 10:28:51)
  • アイコン環境/言語:[Win10 C#] 
    分類:[.NET] 

    Graphic.DrawStringで文字列を描画するプログラムを開発していますが、描画しようとする文字列に含まれる文字がフォントに登録されていない場合、描画は行われないようです(全てのフォント・文字を確認した訳ではありません)。DrawString実行前に描画しようとする文字列内の全文字が描画可能か確認する手段はないのでしょうか。
違反を報告
引用返信

▽[全レス2件(ResNo.1-2 表示)]
■35634 / ResNo.1)  Re[1]: フォントに登録されていない文字の検出
□投稿者/ 魔界の仮面弁士 大御所(1577回)-(2024/11/14(Thu) 16:15:13)
  • アイコンNo35633に返信(Iraquserさんの記事)
    > Graphic.DrawStringで文字列を描画するプログラムを開発していますが
     Graphics.DrawString のことでしょうか。
    GDI+ の描画命令ですね。
    同じフォントでも、WPF と GDI と GDI+ とでは描画できる文字に差が出ます。
    GDI だと代替フォントが使われたりしますし、WFP だと異体字に対応していたりとか。
    http://bbs.wankuma.com/index.cgi?mode=al2&namber=95373&KLOG=165


    > 描画しようとする文字列内の全文字が描画可能か確認する手段はないのでしょうか。
    含まれているかどうかを調べるなら、
    GlyphTypeface.CharacterToGlyphMap.ContainsKey というものがあります。
    https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=30649
違反を報告
引用返信
■35648 / ResNo.2)  Re[2]: フォントに登録されていない文字の検出
□投稿者/ Iraquser 一般人(2回)-(2025/01/18(Sat) 08:53:52)
  • アイコンアドバイスありがとうございます。
    お礼の返信した積りになってて、忘れておりました。本当に申し訳ありません。
解決み!
違反を報告
引用返信

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



■記事リスト / ▲上のスレッド
■35636 / 親記事)  GetObjectでExcelファイルを加工するとExcelファイルが壊れる
□投稿者/ suekun 一般人(1回)-(2024/12/11(Wed) 11:53:59)
  • アイコン環境/言語:[windows11/vb.net] 
    分類:[.NET] 

    お世話になっております。
    vb.netでgetobjectでExcelファイルを読込み保存するとExcelファイルが破損します。
    下記ソースになります。何か問題がありますでしょうか?

    Private Sub LIST_Clear()
    Dim wb As Excel.Workbook
    Dim sh As Excel.Worksheet
    Dim LastRow As Integer
    Try
    wb = GetObject(ListFile)
    Catch ex As Exception

    MessageBox.Show(ex.Message)

    End Try
    sh = wb.Sheets(“Sheet1”)
    LastRow = sh.Cells(sh.Rows.Count, 1).end(Excel.XlDirection.xlUp).row
    Dim tl = sh.Cells(2, 1)
    Dim br = sh.Cells(LastRow + 1, 7)
    Dim wrange = sh.Range(tl, br)
    wrange.ClearContents()
    wb.Save() ←ここでExcelブックが壊れる(シートが参照できなくなります)
    wb.Close()
    End Sub
違反を報告
引用返信

▽[全レス9件(ResNo.5-9 表示)]
■35641 / ResNo.5)  Re[4]: GetObjectでExcelファイルを加工するとExcelファイルが壊れる
□投稿者/ suekun 一般人(5回)-(2024/12/12(Thu) 07:28:30)
  • アイコン2024/12/12(Thu) 09:13:59 編集(投稿者)

    関連なのですが
    Excelファイルを開いていたら、getobjectするようにしている個所があるのですが
    下記の通りです。
    そうしないと、読み取り専用で開いてしまいます。
    これはいかがでしょうか?正常に動作しています。

    If IO.File.Exists(ListFile) = True Then
    Try
    System.IO.File.Move(ListFile, ListFile)
    Catch ex As Exception
    '移動できなかったら起動していると判定
    GoTo ExcelOpen
    End Try
    End If
    ''ファイルオープン
    wb = Appxl.Workbooks.Open(ListFile)
    GoTo ExcelOpenExit
    ExcelOpen:
    Try
    wb = GetObject(ListFile)
    Catch ex As Exception

    MessageBox.Show(ex.Message)
    End Try
    ExcelOpenExit:

違反を報告
引用返信
■35642 / ResNo.6)  Re[5]: GetObjectでExcelファイルを加工するとExcelファイルが壊れる
□投稿者/ 魔界の仮面弁士 大御所(1580回)-(2024/12/12(Thu) 16:11:45)
  • アイコンNo35641に返信(suekunさんの記事)
    > 関連なのですが
    ファイルが破損してしまっている状態だったのか
    それともブックが非表示になっていただけなのか
    確認はとれましたか?


    > そうしないと、読み取り専用で開いてしまいます。
    この判定を行う目的を教えてください。

    編集・保存することを目的としたものでしょうか。
    それとも、他で同時に開かれていないことを保証したいのでしょうか。
    目的を満たすために、GetObject 以外の手法を使うことは許容されますか?

    他で開かれていても保存までできるパターンはありますし
    他で開かれていなくても保存できないパターンもありますし、
    他で開かれていて Workbooks.Open で排他エラーになるパターンもあるので
    念のために確認しています。

    最終的に、ファイルに「読み取り専用属性が付いているか」とか
    アクセス権で「読み取りは許可されているが編集は許可されていない」などの
    パターンまでチェックするのか、何のためにどこまで調査したいのか…。

    GetObject に拘りが無ければ、ROT から Excel.Application オブジェクトを辿って、
    Excel.Application インスタンス (表示名「!{00024500-0000-0000-C000-000000000046}」)から
    それぞれの Workbooks コレクションを列挙判定するという手段もあります。
    コードとしては些か回りくどくなりますが…。
    https://alax.info/blog/1444
    http://bbs.wankuma.com/index.cgi?mode=one&namber=103471


    > これはいかがでしょうか?正常に動作しています。
    うぅむ?
    ListFile と NyukoCSVListFile の関連性が謎ですね??

    変数宣言や Visible の指定有無など、色々と省略され過ぎていて、
    是非の判断がしづらいところです。

    > wb = Appxl.Workbooks.Open(ListFile)
    この書き方は避けるべきですが、ここも掲示板投稿時に
    簡略化しているだけだと思うので、ひとまず目を瞑るとして…。


    > If IO.File.Exists(ListFile) = True Then
    >  Try
    >   System.IO.File.Move(ListFile, ListFile)
    1 行目では「System」を省略して、
    3 行目では明記するという非対称性がとても気になる…。

    Boolean 値の判定時に「= True」を書くべきか否かとか、
    GoTo の是非とか、素の Exception を Catch するべきかどうかとか、
    Message を表示するだけでどの Exception かを記録しないのか、
    そういった宗教論についてはとりあえず保留するとして。


    閑話休題

    >   '移動できなかったら起動していると判定
    この手順ですが、確実性のある手法では無いです。
    そのファイルが Excel で開かれているからといって、同名 Move が失敗する保証は無いからです。

    たとえば、扱っていたファイルが MultiUserEditing = True なものだった場合です。
    共有モードで開かれたファイルであれば、複数ユーザーが同時に開いて編集して保存できますし、
    開かれている最中でも、コマンドプロンプトからの同名 MOVE や VB からの同名 File.Move が
    エラーを発することはありません。

    もちろん、そうした前提条件が明確になっていて、それで目的を果たせる場合は
    現在の手法でも構わないと思います。
違反を報告
引用返信
■35643 / ResNo.7)  Re[6]: GetObjectでExcelファイルを加工するとExcelファイルが壊れる
□投稿者/ 魔界の仮面弁士 大御所(1581回)-(2024/12/12(Thu) 16:23:59)
  • アイコンNo35642に追記(魔界の仮面弁士の記事)
    > ListFile と NyukoCSVListFile の関連性が謎ですね??

    この一文は無視してください。
    元質問が編集される前に書いた回答文が紛れていました。
    > > 2024/12/12(Thu) 09:13:59 編集(投稿者)

    (投稿時にパスワードミスったかな…再編集できなかった)
違反を報告
引用返信
■35644 / ResNo.8)  Re[6]: GetObjectでExcelファイルを加工するとExcelファイルが壊れる
□投稿者/ suekun 一般人(6回)-(2024/12/13(Fri) 08:56:58)
  • アイコンNo35642に返信(魔界の仮面弁士さんの記事)
    > ■No35641に返信(suekunさんの記事)
    >>関連なのですが
    > ファイルが破損してしまっている状態だったのか
    > それともブックが非表示になっていただけなのか
    > 確認はとれましたか?

    →ブックが非表示になっていたことがわかりました。
     ファイル自体は、破損していなかったようです。
     ただ、毎回同じ状態になるので、getobjectは、ファイルが開かれている場合のみにしようと考えております。
     ありがとうございます。
違反を報告
引用返信
■35645 / ResNo.9)  Re[6]: GetObjectでExcelファイルを加工するとExcelファイルが壊れる
□投稿者/ suekun 一般人(7回)-(2024/12/18(Wed) 15:31:06)
  • アイコンNo35642に返信(魔界の仮面弁士さんの記事)
    魔界の仮面弁士さん
    ありがとうございました。
    大変勉強になりました。
解決み!
違反を報告
引用返信

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






Mode/  Pass/


- Child Tree -

2025/03/29(Sat) 10:23:28 に作成されたキャッシュを表示しています。
生のデータを表示する | キャッシュを最新にする