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

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

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



■記事リスト / ▼下のスレッド
■35354 / 親記事)  タイマーの一括処理
□投稿者/ ま〜 一般人(47回)-(2023/01/26(Thu) 16:23:55)
  • アイコン環境/言語:[Vs2022 Basic] 
    分類:[.NET] 

    お世話になります
    初歩的な質問で申し訳ないのですが

    コードの書き方についてです。

    下記の様な記述では構文エラーになってしまいます。同じ様な事が出来る方法ありますか?


    Private InterVaLTimer0 As Timer()

    '---以下FormLoad

    VaLTime = {Timer11, Timer12, Timer13・・・}

違反を報告
引用返信

▽[全レス6件(ResNo.2-6 表示)]
■35356 / ResNo.2)  Re[2]: タイマーの一括処理
□投稿者/ ま〜 一般人(48回)-(2023/01/27(Fri) 13:45:03)
  • アイコン
    > VB2022 なのですよね。単純にスペルミスしているだけでは?
    > InterVaLTimer0 = {Timer11, Timer12, Timer13 }

    すみません。切り取りミスです。誤解を招く事してしまいました。
    スペルミスでは無く実際に赤い波線が。。

    interVaLTimer0 = {Timer1} で {Timer1}に入ってます

250×52
イメージ
1674794703.jpg
/14KB
違反を報告
引用返信
■35357 / ResNo.3)  Re[3]: タイマーの一括処理
□投稿者/ 魔界の仮面弁士 大御所(1528回)-(2023/01/27(Fri) 14:08:41)
  • アイコンNo35356に返信(ま〜さんの記事)
    > スペルミスでは無く実際に赤い波線が。。

    いやいやいや。肝心のエラー内容を示して貰わないことには…。(^_^;)

    エスパー回答するわけにもいかないので、せめて
    そのエラー個所のコードとメッセージぐらいは貼ってください。


    可能性1) BC30311: 型 '(型名)' の値を 'Timer' に変換できません。
    可能性2) BC30451: 'Timer1' は宣言されていません。アクセスできない保護レベルになっています。
    可能性3) BC31429: class '(フォーム名)' に同じ名前のメンバーが多種類存在するため、'Timer1' があいまいです。
違反を報告
引用返信
■35358 / ResNo.4)  Re[4]: タイマーの一括処理
□投稿者/ ま〜 付き人(50回)-(2023/01/27(Fri) 14:18:05)
  • アイコンいつもエスパーアドバイスなのでエスパー以上かと思います

    ビルド出来なかったのエラーは表示されと思ってましたが右タプのエラー一覧にありのを発見しまいました。

    内容は
    「エラー BC30311 型 'Timer' の値を 'Timer' に変換できません。」
    です

    あと気になる所があります。宣言の所にある

    Private interVaLTimer0 As Timer()

    Private Tbox0 As TextBox()と比べて

    Privateの文字色が若干薄い色です

    変数宣言の Dimと同じ色です






違反を報告
引用返信
■35359 / ResNo.5)  Re[5]: タイマーの一括処理
□投稿者/ 魔界の仮面弁士 大御所(1529回)-(2023/01/27(Fri) 14:30:51)
  • アイコンNo35358に返信(ま〜さんの記事)
    > 「エラー BC30311 型 'Timer' の値を 'Timer' に変換できません。」

    Form2.vb の上部に、余計な Imports が追加されているか、
    あるいは、別の Timer が混入している…といった状況を想像。


    可能性1) Timer という名前の Class あるいは Strucutre を自作している

    可能性2) 名前空間の異なる Timer クラスが併用されている
     a: System.Windows.Forms.Timer
     b: System.Threading.Timer
     c: System.Timers.Timer
     d: System.Web.UI.Timer

     ※ WinForms の場合、普通は a: を使います。


    まずは確認のため、Form2 に貼った Timer1 コンポーネントを選択し、
    プロパティ ウィンドウの上部が
     "Timer1 System.Windows.Forms.Timer"
    になっているかどうかを確認してください。

    さらに、フィールド変数の型宣言を
     Private InterVaLTimer0 As Timer()
    から
     Private InterVaLTimer0 As Global.System.Windows.Forms.Timer()
    に変更してみてください。
違反を報告
引用返信
■35360 / ResNo.6)  Re[6]: タイマーの一括処理
□投稿者/ ま〜 付き人(52回)-(2023/01/27(Fri) 17:20:00)
  • アイコンやっぱりエスパー確定です。

    Private InterVaLTimer0 As Global.System.Windows.Forms.Timer()
    でOKでした

    それと
    Imports System.Threadingがありました。これを消してもOKでした。

    何に使ってるのか分からないですが何かのなごりだと思います

    こんなトラブルもあるんですね。

    ありがとうございました

    クローズします。
解決み!
違反を報告
引用返信

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



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35259 / 親記事)  先頭に空白(スペース)があるファイルを読み込んでRichTextBoxへ書き出すとスペースが削除える
□投稿者/ ま〜 一般人(23回)-(2022/12/01(Thu) 13:34:12)
  • アイコン環境/言語:[Windows10 VS20222] 
    分類:[.NET] 

    いつもありがとうございます。またハマってます。

    例)" 1 2345"の文字列
       ↑スペース
      
    テキストファイルの内容に先頭にスペースがあるファイルを読み込んでRichTextBoxへ書き出すと先頭のスペース全部が削除されます
    "1 2345こんな感じになります。"
    間にある(1と2間)スースは消えません。
    何がダメなのか分からない状況です。

    Dim sr As Microsoft.VisualBasic.FileIO.TextFieldParser = New Microsoft.VisualBasic.FileIO.TextFieldParser (DataPath & "文字.TXT", System.Text.Encoding.GetEncoding("shift_jis"))

    '内容は区切り文字形式
    sr.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.Delimited

    'デリミタはカンマ
    sr.SetDelimiters(",")

    Dim Row As String() '= sr.ReadFields
    '一行目を読み込
    Row = sr.ReadFields()
    RichTextBox1.Text = Row(0)
    Console.WriteLine(Row(0))

    上記の様にやってます。アドバイスお願いします。
違反を報告
引用返信

▽[全レス6件(ResNo.2-6 表示)]
■35261 / ResNo.2)  Re[1]: 先頭に空白(スペース)があるファイルを読み込んでRichTextBoxへ書き出すとスペースが削除える
□投稿者/ KOZ 一般人(7回)-(2022/12/01(Thu) 14:19:47)
  • アイコンNo35259に返信(ま〜さんの記事)
    > テキストファイルの内容に先頭にスペースがあるファイルを読み込んでRichTextBoxへ書き出すと先頭のスペース全部が削除されます

    こういうふうに書くということは、どこでスペースが削除されているのか、調べていないということですか?
    せめて原因がどこにあるか突き止めてから書き込みましょう。
    RichTextBox は関係ないですよね?

    「TextFieldParser.TrimWhiteSpace プロパティ」
    https://learn.microsoft.com/ja-jp/dotnet/api/microsoft.visualbasic.fileio.textfieldparser.trimwhitespace?view=netframework-4.8
    を False にしてください。

違反を報告
引用返信
■35263 / ResNo.3)  Re[1]: 先頭に空白(スペース)があるファイルを読み込んでRichTextBoxへ書き出すとスペースが削除える
□投稿者/ 魔界の仮面弁士 大御所(1496回)-(2022/12/01(Thu) 14:39:24)
  • アイコンNo35259に返信(ま〜さんの記事)
    > テキストファイルの内容に先頭にスペースがあるファイルを読み込んで
    > RichTextBoxへ書き出すと先頭のスペース全部が削除されます
    どこまで調査されましたか?

    その事象は、RichTextBox の問題なのでしょうか。
    テキストファイル読み取りの問題なのでしょうか。


    > RichTextBox1.Text = Row(0)
    この時、Row(0) の先頭に空白が含まれているかどうかを確認済みでしょうか?


    Row(0) の先頭に空白が既に含まれていたのであれば、
    「先頭に空白があるファイル」の読み込みは成功していて
    「RichTextBoxへ書き出すとスペースが削除される」という状況といえるでしょう。

    その場合、質問時に TextFieldParser に関するくだりを述べる必要はなく、
    単純に「RichTextBox1.Text = " 1 2345"」に関する動作を示すだけで良いはず。


    一方、Row(0) の時点で先頭空白が失われてしまう状況なのであれば、
    RichTextBox は一切関係ないことになります。その場合はファイルの
    読み込み手順によるもの(TextFieldParser を使うことの是非)でないかを調べたり
    ファイル内容に問題が無いか(空白に見えるが、実は別の不可視文字だったとか)を
    調べることになりますよね。場合によっては、
     RichTextBox1.LoadFile(DataPath & "文字.TXT", RichTextBoxStreamType.PlainText)
    の結果と比較してみても良いかもしれません。


    > 上記の様にやってます。アドバイスお願いします。
    結論から言えば、TextFieldParser が原因です。
    このクラスは先頭末尾空白を自動的に削除しますし、
    改行のみの行(いわゆる空行)も無視する仕様です。

    先頭末尾空白については TrimWhiteSpace プロパティで抑制できますが
    空行無視は回避策がなかったはずなので、要件次第では
    TextFieldParser 以外の選択肢を検討した方が良いかと思います。
違反を報告
引用返信
■35264 / ResNo.4)  Re[2]: 先頭に空白(スペース)があるファイルを読み込んでRichTextBoxへ書き出すとスペースが削除える
□投稿者/ ま〜 一般人(26回)-(2022/12/01(Thu) 14:55:09)
  • アイコンKOZさん魔界さんありがとうございます

    ご指摘の様にRichTextBoxは関係無くファイルから変数に読み込んだ段階で消えています。
    仕様なんですね。なんか私にはハードルが高くなってきました。

違反を報告
引用返信
■35265 / ResNo.5)  Re[3]: 先頭に空白(スペース)があるファイルを読み込んでRichTextBoxへ書き出すとスペースが削除える
□投稿者/ KOZ 一般人(8回)-(2022/12/01(Thu) 16:43:39)
  • アイコンNo35264に返信(ま〜さんの記事)
    > KOZさん魔界さんありがとうございます

    「魔界さん」ではなく、「弁士さん」と呼びましょう。
    # 遠い昔、本人がおっしゃってたので(^_^;)

    > ご指摘の様にRichTextBoxは関係無くファイルから変数に読み込んだ段階で消えています。
    > 仕様なんですね。なんか私にはハードルが高くなってきました。

    弁士さんが書いてらっしゃいますが要件次第です。
    項目に改行がない、空行を無視して良いなら TextFieldParser で充分かと。

違反を報告
引用返信
■35269 / ResNo.6)  Re[4]: 先頭に空白(スペース)があるファイルを読み込んでRichTextBoxへ書き出すとスペースが削除える
□投稿者/ ま〜 一般人(27回)-(2022/12/05(Mon) 15:33:41)
  • アイコン出来ました。
    ありがとうございます。
解決み!
違反を報告
引用返信

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



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35204 / 親記事)  タッチキーボードでIMEを自動で切替えたい
□投稿者/ 炎の妖精さん 一般人(9回)-(2022/10/27(Thu) 15:59:00)
  • アイコン環境/言語:[Windows10(64bit)_VB.NET] 
    分類:[.NET] 

    お世話になっております。

    此度はタッチキーボードを使用するにあたり、
    項目によって
    「半角(ImeMode:Off)」と「ひらがな(ImeMode:Hiragana)」に分けたいのですが、
    タッチキーボードではどのように処理すればよろしいのでしょうか?

    使用しているタブレットのタッチキーボードでは「ひらがな」として開くようになり、
    英数字で入れたい項目では毎度[半角/全角]キーを押下しなければいけません。
    その為、項目によって[半角][ひらがな]を切替えられるのかをご教授頂きたいです。

    ※タッチスクリーン
    c:\program files\common files\microsoft shared\ink\tabtip.exe
違反を報告
引用返信

▽[全レス6件(ResNo.2-6 表示)]
■35206 / ResNo.2)  Re[2]: タッチキーボードでIMEを自動で切替えたい
□投稿者/ 魔界の仮面弁士 大御所(1469回)-(2022/10/27(Thu) 17:38:06)
  • アイコンNo35205に追記(魔界の仮面弁士の記事)
    > 第二引数には System.Windows.Input 名前空間(参照設定:PresentationCore) の
    > InputScopeNameValue 列挙型を指定します。

    ただし InputScopeNameValue の定義範囲は -4〜47 の範囲に限られています。

    その範囲外で指定する場合は、Windows SDK を参照して、
    該当する InputScope の定数値を直接指定することになります。
    今回それが必要になるかは別として。


    ※50(IS_SEARCH) 以降は Windows 8 以降が対象
    ※52(IS_SEARCH_INCREMENTAL) 以降は Windows 10 以降が対象

     IS_ENUMSTRING = -5
     IS_XML = -4
      :
     IS_DEFAULT = 0
    IS_URL = 1
      :
     IS_HANJA = 47
     IS_HANGUL_HALFWIDTH = 48
      :
     IS_FORMULA_NUMBER = 67
     IS_CHAT_WITHOUT_EMOJI = 68

    https://learn.microsoft.com/ja-jp/windows/win32/api/inputscope/ne-inputscope-inputscope
    https://learn.microsoft.com/ja-jp/dotnet/api/system.windows.input.inputscopenamevalue?view=netframework-4.8
違反を報告
引用返信
■35208 / ResNo.3)  Re[3]: タッチキーボードでIMEを自動で切替えたい
□投稿者/ 炎の妖精さん 一般人(11回)-(2022/10/28(Fri) 10:47:52)
  • アイコン魔界の仮面弁士様
    回答、ありがとうございます。

    確認させて頂きましたが、
    開発環境端末では目的通りの動作になりましたが、
    タブレット端末では「ひらがな」のままでした。

    第2引数のパラメータを変更して
    随時確認するしかないでしょうか?
    ※現在、指定している第2引数パラメータ
     AlphanumericHalfWidth(40):半角英数字のテキスト入力パターン
違反を報告
引用返信
■35209 / ResNo.4)  Re[4]: タッチキーボードでIMEを自動で切替えたい
□投稿者/ 魔界の仮面弁士 大御所(1470回)-(2022/10/28(Fri) 13:28:50)
  • アイコンNo35208に返信(炎の妖精さんさんの記事)
    > 開発環境端末では目的通りの動作になりましたが、
    > タブレット端末では「ひらがな」のままでした。

    入力項目ごとに、入力モードを動的に設定したいのですよね。

    OS 設定で [キーボードの詳細設定] を開いて、
    [アプリ ウィンドウごとに異なる入力方式を設定する]
    の設定が、両端末で同じになっているか確認してみてください。
違反を報告
引用返信
■35210 / ResNo.5)  Re[5]: タッチキーボードでIMEを自動で切替えたい
□投稿者/ 魔界の仮面弁士 大御所(1471回)-(2022/10/28(Fri) 13:39:18)
  • アイコンNo35209に追記(魔界の仮面弁士の記事)
    > [アプリ ウィンドウごとに異なる入力方式を設定する]

    場所としてはこのあたりです。この項目の On/Off で動作が変わりますか?
    https://iimemojp.com/inputcontrol/


    それ以外で関係しそうなところと言えば、Microsoft IME の設定画面にある
    「以前のバージョンの Microsoft IME を使う」の設定ぐらいかな…?
違反を報告
引用返信
■35211 / ResNo.6)  Re[6]: タッチキーボードでIMEを自動で切替えたい
□投稿者/ 炎の妖精さん 一般人(12回)-(2022/10/28(Fri) 14:02:06)
  • アイコン魔界の仮面弁士様
    回答、そしてご助言いただきありがとうございます。

    >OS 設定で [キーボードの詳細設定] を開いて、
    >[アプリ ウィンドウごとに異なる入力方式を設定する]
    >の設定が、両端末で同じになっているか確認してみてください。
    変更しましたが、変わらず[ひらがな]が表示されました。


    ※補足
     タッチキーボードのレイアウトを"通常のレイアウト"にしたことで
     項目によって[半角][ひらがな]を分けることが出来て、解決しました。
     今までは"標準キーボード"を選択していましたが、このレイアウトではどの項目に対しても[ひらがな]となっていました。
     目的が果たせましたので解決とさせていただきますm(_ _)m

    https://www.fmworld.net/cs/azbyclub/qanavi/jsp/qacontents.jsp?PID=4710-9922

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

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



■記事リスト / ▼下のスレッド / ▲上のスレッド
■35687 / 親記事)  webformでの制御
□投稿者/ イクイノックス 一般人(1回)-(2025/09/24(Wed) 11:34:57)
  • アイコン環境/言語:[Webform、C#、.NetFramework4.8.1] 
    分類:[ASP.NET] 

    通常、「更新」ボタンなどを画面デザインで配置して実装する場合、
    クライアントスクリプトで記述するconfirmメソッドはOnClickイベントで実装すると思います。

    gridviewのAutogenerate系のボタンやコマンドコントロールで「自動的」に実装される「ボタン」は画面デザインの時点ではhtmlソース表示しても記述されてないため、OnClickでの制御ができません。
    そのため、postback後に制御する必要がありますが、入力チェック→alertでメッセージ表示は、サーバー側の処理が終わった後に出すイメージで問題ありませんが、confirmはpostback後にRegisterClientScriptBlockで実行するように処理しても、
    サーバー側での更新処理が全部終わってからメッセージが出力される挙動になるため、確認メッセージの用をなしていません。

    OnClickに該当する処理をpostback前にhtmlソースに書かれてなくても無理やり挙動させる、あるいはpostback後の「更新」「削除」などのイベント処理の冒頭でconfirmを出し、ok:実行、キャンセル:e.cancel=true等で中止
    というような処理をするのは不可能なのでしょうか?
    ご存じの方ご教示ください。

    多分VBでもC#でも同じような処理になると思いますが、
    一応サーバーサイドはC#で記述してます。

違反を報告
引用返信

▽[全レス5件(ResNo.1-5 表示)]
■35688 / ResNo.1)  Re[1]: webformでの制御
□投稿者/ kiku 一般人(3回)-(2025/09/24(Wed) 15:25:36)
  • アイコンNo35687に返信(イクイノックスさんの記事)
    > そのため、postback後に制御する必要がありますが、入力チェック→alertでメッセージ表示は、サーバー側の処理が終わった後に出すイメージで問題ありませんが、confirmはpostback後にRegisterClientScriptBlockで実行するように処理しても、
    > サーバー側での更新処理が全部終わってからメッセージが出力される挙動になるため、確認メッセージの用をなしていません。

    サーバーサイドの処理を2つに分ければ良いのではないでしょうか?
    1.入力チェックのみを行う処理(入力チェックエラー)
    2.登録のみを行う処理(登録時のエラー)

    当方、WebFormアプリの作成未経験のため、概念的な回答のみになります。
違反を報告
引用返信
■35689 / ResNo.2)  Re[2]: webformでの制御
□投稿者/ イクイノックス 一般人(2回)-(2025/09/24(Wed) 16:05:24)
  • アイコンNo35688に返信(kikuさんの記事)
    > ■No35687に返信(イクイノックスさんの記事)
    >>そのため、postback後に制御する必要がありますが、入力チェック→alertでメッセージ表示は、サーバー側の処理が終わった後に出すイメージで問題ありませんが、confirmはpostback後にRegisterClientScriptBlockで実行するように処理しても、
    >>サーバー側での更新処理が全部終わってからメッセージが出力される挙動になるため、確認メッセージの用をなしていません。
    >
    > サーバーサイドの処理を2つに分ければ良いのではないでしょうか?
    > 1.入力チェックのみを行う処理(入力チェックエラー)
    > 2.登録のみを行う処理(登録時のエラー)
    >
    > 当方、WebFormアプリの作成未経験のため、概念的な回答のみになります。

    1も2もalertなので表示できます。

    問題はconfirmのほうです。
    具体的に言うと、
    「削除」ボタンはWebform側でサーバーサイドで自動的に生成される感じで、htmlで表現されていません。
    なので、「削除」押下→即postback→(ここからサーバーサイド)page_load→grid_RowCommand→grid_RowDeletingの順にイベントが発生します。

    grid_RowCommandでは「新規作成」「更新」、「削除」いずれか発生したか判定できます。page_loadではpostbackしたかどうかしか判定できないようで何ボタンが押されたかわかりません。

    grid_RowCommandで「削除」のときconfirmを出すみたいな処理はできますが、
    それはgrid_RowDeletingの処理、つまり削除処理が実行された後に表示されるので、confirmの操作が反映できません。
    おそらくpage_loadで出せばいけるのかもしれませんが、「削除」であることが判定できないためconfirmを出す処理を組み込めません。

    こんな状況です。
違反を報告
引用返信
■35690 / ResNo.3)  【報告】No35687 の投稿はマルチポストです
□投稿者/ (報告) 一般人(1回)-(2025/09/24(Wed) 16:24:14)
  • アイコンNo35687 の投稿はマルチポストです。もし元記事の投稿者にマルチポストの心当たりがない場合は、すぐに返信でお知らせください。

    ●マルチポストされている場所
    https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=31022

    ----------
    この掲示板ではマルチポストが禁止されています。詳しくは、「書き込みのルールについて」をお読みください。

    ●書き込みのルールについて
    https://dobon.net/vb/bbs/index.html
違反を報告
引用返信
■35691 / ResNo.4)  Re[3]: webformでの制御
□投稿者/ kiku 一般人(4回)-(2025/09/24(Wed) 17:12:59)
  • アイコンNo35689に返信(イクイノックスさんの記事)
    > ■No35688に返信(kikuさんの記事)
    >>■No35687に返信(イクイノックスさんの記事)
    > 問題はconfirmのほうです。
    > 具体的に言うと、
    > 「削除」ボタンはWebform側でサーバーサイドで自動的に生成される感じで、htmlで表現されていません。
    > なので、「削除」押下→即postback→(ここからサーバーサイド)page_load→grid_RowCommand→grid_RowDeletingの順にイベントが発生します。
    >
    > grid_RowCommandでは「新規作成」「更新」、「削除」いずれか発生したか判定できます。page_loadではpostbackしたかどうかしか判定できないようで何ボタンが押されたかわかりません。

    grid_RowCommand処理を下記にしたらできませんか?
    1.grid_RowCommandで「削除」ボタンが押下されたか判断。
    2.削除ボタンが押されたら、削除ボタン用入力チェック画面へ遷移。
    3.削除ボタン用入力チェック画面では、confirmのみ表示する。
    4.confirmでOKなら、削除処理画面へ遷移。
    5.confirmでcancelなら、元の画面へ遷移し、削除された表を表示。
違反を報告
引用返信
■35692 / ResNo.5)  Re[4]: webformでの制御
□投稿者/ イクイノックス 一般人(3回)-(2025/10/02(Thu) 11:28:07)
  • アイコンNo35691に返信(kikuさんの記事)
    > ■No35689に返信(イクイノックスさんの記事)
    >>■No35688に返信(kikuさんの記事)
    > >>■No35687に返信(イクイノックスさんの記事)
    >>問題はconfirmのほうです。
    >>具体的に言うと、
    >>「削除」ボタンはWebform側でサーバーサイドで自動的に生成される感じで、htmlで表現されていません。
    >>なので、「削除」押下→即postback→(ここからサーバーサイド)page_load→grid_RowCommand→grid_RowDeletingの順にイベントが発生します。
    >>
    >>grid_RowCommandでは「新規作成」「更新」、「削除」いずれか発生したか判定できます。page_loadではpostbackしたかどうかしか判定できないようで何ボタンが押されたかわかりません。
    >
    > grid_RowCommand処理を下記にしたらできませんか?
    > 1.grid_RowCommandで「削除」ボタンが押下されたか判断。
    > 2.削除ボタンが押されたら、削除ボタン用入力チェック画面へ遷移。
    > 3.削除ボタン用入力チェック画面では、confirmのみ表示する。
    > 4.confirmでOKなら、削除処理画面へ遷移。
    > 5.confirmでcancelなら、元の画面へ遷移し、削除された表を表示。

    それだと処理が複雑になりすぎるので、
    AutoGenerateDeleteボタンによる実装を断念し、

    テンプレートフィールドのアイテムとしてボタンを定義して、
    1.OnClientClickでConfirm表示(returnを返す形)
    2.CommandNameプロパティーをDeleteに設定

    これで戻り値がfalseの時は処理中止、trueの時はgrid_RowDeleting発動(=行削除実行)となります。

    結局、AutoGenerateDeleteボタンだと即postbackになるようにロジックが自動生成してしまうので、grid_RowCommandの時点では手遅れ(page_loadが先に発生してしまうので)、なのでpostback前にConfirmのように処理分岐が必要なJSの処理実行するには上記のような方法しかないことがわかりました。

    即postbackに必ずなってしまう使用がいまいちとは思いつつ、最早WebformはCore系で廃止されているため、文句言っても仕様改善は期待できません。
    テンプレートフィールドを使うのが無難と判断しました。




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

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



■記事リスト / ▲上のスレッド
■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接続できないフォルダ参照はできないのでしょうか?
    もしできるのなら、やり方を教えていただきたく、何卒よろしくお願いいたします。



違反を報告
引用返信

▽[全レス5件(ResNo.1-5 表示)]
■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
違反を報告
引用返信
■35667 / ResNo.5)  Re[3]: ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ KOZ 一般人(41回)-(2025/03/29(Sat) 16:36:46)
  • アイコンNo35664に返信(みーちょさんの記事)
    > セキュリティの関係でNGくらったのです。

    セキュリティということであれば、ftp より共有フォルダのほうが強固です。
    共有名の後ろに $ をつければエクスプローラーからは見えなくなりますし。

    Windows ではデフォルトでルートディレクトリが共有されているので
    適切な権限があれば直接さわることもできます。

    D:\bbb フォルダなら、\\サーバー名\D$\bbb という具合です。
違反を報告
引用返信

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






Mode/  Pass/


- Child Tree -