C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■7216  Re[5]: ASP.NET にて画面分割
□投稿者/ Jitta -(2007/08/31(Fri) 21:46:18)
    2007/09/01(Sat) 09:50:32 編集(投稿者)

    とりあえず、
    <div style="width:100%; position:related;">
    <div style="position:absolute; top:0px; left:0px; width:100%; height:120px;">
    ここにヘッダ
    </div>
    <div style="position:absolute; top:120px; width:120px; left:0px;">
    ここにメニュー
    こそっと修正
    </div>
    <div style="position:absolute; top:120px; left:120px;">
    ここにメイン
    <div>
    </div>
    とか。
記事No.7165 のレス /過去ログ18より / 関連記事表示
削除チェック/

■12416  Re[3]: VB.NETでGetCursorPosを使いたい
□投稿者/ 魔界の仮面弁士 -(2008/01/09(Wed) 14:27:10)
    No12409 (○ さん) に返信
    > ご提示のものでも大丈夫そうですが、GetCursorPosがなぜ使えないかも知りたい感じです。
    
    Declare 宣言を「ByVal POINTAPI」にしたいなら、こんな感じ。
    
    
    Imports system.Runtime.InteropServices
    Public Class Form1
        <StructLayout(LayoutKind.Sequential, Pack:=4)> Class POINTAPI
            Public X As Integer
            Public Y As Integer
            Public Shared Widening Operator CType(ByVal o As POINTAPI) As String
                Return String.Format("(X, Y)=({0}, {1})", o.X, o.Y)
            End Operator
        End Class
    
        Declare Function GetCursorPos Lib "user32" (ByVal lpPoint As POINTAPI) _
            As <MarshalAs(UnmanagedType.Bool)> Boolean
    
        Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick
            Dim A As New POINTAPI()
            GetCursorPos(A)
            Me.Text = A
        End Sub
    
        Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
            Timer1.Interval = 100
            Timer1.Enabled = True
        End Sub
    End Class
記事No.12407 のレス /過去ログ27より / 関連記事表示
削除チェック/

■27396  2つのDataTableの比較抽出方法について
□投稿者/ PROTO -(2008/11/05(Wed) 12:40:36)

    分類:[.NET 全般] 

    いつも参考にさせていただいています。

    同じ構造のDataTableが2つ(TableA、TableB)有り、TableAの列Aに含まれるデータと一致するTableBの全てのレコードを抽出してTableCを作成したいと考えています。
    どのような方法があるでしょうか?お知恵を貸していただければと思います。

    環境:WinXP VS2005 言語:VB.NET

    DataTableの構造TableA
     列A
     列B
     列C
     
    DataTableの構造TableB
     列A
     列B
     列C

    レコード数は
    TableA < TableB

    テーブル間にリレーションを張る方法を考えたのですが、TableAを親としたときに、
    レコード数がTableA > TableBの場合、リレーションを設定するときに問題ないのですが、
    レコード数がTableA < TableBの場合、リレーションを設定するときに下記のエラーが発生します。
    "対応する親の値が指定されてない値があるため、この制約を有効にできません。"
      と出てしまいます。

    リレーションを張る方法を、
    http://www.microsoft.com/japan/msdn/thisweek/300x10/phase2/relationaldata/vb.aspx
    を参考に下記のようにしたのですが、一致するレコードを全て取得したいのですが、
    どののようにすればいいのかで、止まっています。

    Dim ds As DataSet
    Dim dt1, dt2 As DataTable
    ds = New DataSet
    ds.Tables.Add(dt1)
    ds.Tables.Add(dt2)

    Me.DataGridView1.DataSource = ds
    Me.DataGridView1.DataMember = "TableA"

    Me.DataGridView2.DataSource = ds
    Me.DataGridView2.DataMember = "TableB"
    'リレーションを設定
    ds.Relations.Add(New DataRelation("TableA_TableB", ds.Tables("TableA").Columns(0), ds.Tables("TableB").Columns(0)))
    Me.DataGridView3.DataSource = ds
    Me.DataGridView3.DataMember = "TableA.TableA_TableB"
親記事 /過去ログ50より / 関連記事表示
削除チェック/

■53840  Re[5]: linux ウィルス対策に関して
□投稿者/ ミラ -(2010/09/28(Tue) 12:16:41)
    > LAN に閉じている Linux 機に対策ソフトはいらないに1票。

    Linuxではどうなのかはよく知りませんがUSBメモリー経由で感染するものもあります
    LANを閉じていても運用する人が素人ならUSBメモリー自体かサーバーに対策する必要はあると思います

    この手のもので不要か必要かの議論になったら必要な答えしか出ないような^^;
記事No.53792 のレス /過去ログ90より / 関連記事表示
削除チェック/

■85643  Re[2]: リンク先のファイル形式を調べる方法
□投稿者/ スマスマ -(2017/11/12(Sun) 22:31:09)
    No85642 (Azulean さん) に返信
    
    ありがとうございます。
    
    以下のようにして試してみたのですが
    disposがnothingとなっており、ファイル名を取得することができません。
    他のURLも試してみましたがうまくいきませんでした
    何が問題でしょうか?
    
    
        Sub main2()
    
    
            Dim url As String = "http://www.atmarkit.co.jp/fdotnet/dotnettips/618downnoname/downnoname.html"
    
            Dim req As HttpWebRequest _
              = CType(WebRequest.Create(url), HttpWebRequest)
            Dim res As HttpWebResponse _
              = CType(req.GetResponse(), HttpWebResponse)
    
            Dim fileName As String = "download.tmp"
    
            ' ヘッダ情報からファイル名の取得
            Dim dispos As String = res.Headers("Content-Disposition")
    
            If Not String.IsNullOrEmpty(dispos) Then
    
                ' filename=<ファイル名>の抜き出し
                Dim re As New Regex(
                  "filename\s*=\s*           " &
                  "(?:                       " &
                  "  ""(?<filename>[^""]*)"" " &
                  "  |                       " &
                  "  (?<filename>[^;]*)      " &
                  ")                         " _
                  , RegexOptions.IgnoreCase _
                  Or RegexOptions.IgnorePatternWhitespace)
    
                Dim m As Match = re.Match(dispos)
                If m.Success Then
                    fileName = m.Groups("filename").Value
                End If
            End If
    
            ' ファイルのダウンロード
            Using st As Stream = res.GetResponseStream()
                Using fs As New FileStream(fileName, FileMode.Create)
                    Dim buf(1024) As Byte
                    Dim count As Integer = 0
                    Do
                        count = st.Read(buf, 0, buf.Length)
                        fs.Write(buf, 0, count)
                    Loop While count <> 0
                End Using
            End Using
            res.Close()
        End Sub
    
    
    
記事No.85641 のレス /過去ログ146より / 関連記事表示
削除チェック/

■85644  Re[3]: リンク先のファイル形式を調べる方法
□投稿者/ Azulean -(2017/11/12(Sun) 22:50:00)
    No85643 (スマスマ さん) に返信
    > 以下のようにして試してみたのですが
    > disposがnothingとなっており、ファイル名を取得することができません。
    > 他のURLも試してみましたがうまくいきませんでした
    > 何が問題でしょうか?

    先にも書きましたが、存在しない場合もあるということです。
    今回の URL だと、サーバー側としてもダウンロードファイル名を指定する必要がありませんからね。

    Content-Disposition はサーバーがこのファイル名で保存して欲しいと希望を出す場合だけ、ついてくると思ってください。
記事No.85641 のレス /過去ログ146より / 関連記事表示
削除チェック/

■85717  Re[8]: リンク先のファイル形式を調べる方法
□投稿者/ PANG2 -(2017/11/15(Wed) 15:42:12)
    2017/11/15(Wed) 15:54:36 編集(投稿者)
    2017/11/15(Wed) 15:43:59 編集(投稿者)

    No85716 (スマスマ さん) に返信
    > クライアント側から、
    > MIMEタイプを調べるにはどのようにしたら良いですか?

    (1)MIMEタイプの取得

    Content-Type ヘッダーを読む。
    HTTPヘッダを読む方法は、
    No85643 に既出。

    もしくは、
    HttpWebResponse.ContentType プロパティ

    (2)MIMEタイプから拡張子の取得

    レジストリの HKEY_CLASS_ROOT\MIME\Database\Content Type 以下を見る。
    No85651 に既出。
記事No.85641 のレス /過去ログ146より / 関連記事表示
削除チェック/

■85718  Re[9]: リンク先のファイル形式を調べる方法
□投稿者/ スマスマ -(2017/11/15(Wed) 16:13:27)
    No85717 (PANG2 さん) に返信

    No85643 の方法は、

    Content-Type ヘッダーではなく、Content-Disposition ヘッダーで読む方法ではないでしょうか?
    Content-Type ヘッダーの方法をお教えくださいませ。
     
記事No.85641 のレス /過去ログ146より / 関連記事表示
削除チェック/

■85721  Re[10]: リンク先のファイル形式を調べる方法
□投稿者/ 魔界の仮面弁士 -(2017/11/15(Wed) 17:22:17)
    No85718 (スマスマ さん) に返信
    > No85643 の方法は、
    > Content-Type ヘッダーではなく、Content-Disposition ヘッダーで読む方法ではないでしょうか?

    そうですよ。ですから、
    『Content-Type ヘッダーを読む方法』ではなく、
    『HTTPヘッダを読む方法』となっていますよね。

    Content-Disposition ヘッダーであれ
    Content-Type ヘッダーであれ、
    HTTP 応答ヘッダーであることには変わりないので
    同じ方法で取得できるはずです。


    以下、別パターンとして。(基本的には No85643 と同じです)


    Dim url As String = "http://www.wankuma.com/favicon.ico"

    Dim req = DirectCast(WebRequest.Create(url), HttpWebRequest)
    'Content-Type を知りたいだけなら、GET の代わりを HEAD を使えます。
    'ファイル本体も同時に得る場合は、直接 GET / POST しましょう。
    req.Method = WebRequestMethods.Http.Head

    'HTTP 応答ヘッダーは文字列として得られますが、
    '下記ではそれを、ContentType クラスで受けるようにしてみました。
    Dim contentType As System.Net.Mime.ContentType
    Using res = DirectCast(req.GetResponse(), HttpWebResponse)
      Dim ct As String = res.Headers(HttpResponseHeader.ContentType)
      If ct Is Nothing Then
        contentType = New System.Net.Mime.ContentType()
      Else
        contentType = New System.Net.Mime.ContentType(ct)
      End If
    End Using
記事No.85641 のレス /過去ログ146より / 関連記事表示
削除チェック/

■88835  Re[1]: C# webBrowser.Navigate後のボタンクリッ
□投稿者/ WebSurfer -(2018/10/03(Wed) 19:59:37)
    No88833 (びぎなー青ドンちゃん さん) に返信

    何に時間がかかっているか(どこがボトルネックか)を把握できてないですよね?

    たぶん、1.8 秒の内ほとんどが要求が出て、応答が返ってきて、WebBrowser で応答の読み込みが
    終了するまでに費やされているのではないでしょうか?

    Fiddler などのキャプチャツールを使って調べてみてください。
記事No.88833 のレス /過去ログ153より / 関連記事表示
削除チェック/

■94294  Re[1]: 保存のダイアログボックスの位置を取得
□投稿者/ KOZ -(2020/03/31(Tue) 17:34:35)
    No94283 (うげつ さん) に返信
    > そこで質問なのですがもし可能であれば、VBからそのダイアログボックス内にある「保存(S)」の位置(XY座標)を取得したく思っています。
    
    UIスレッドを複数持てば別ですが、ダイアログということなら、アプリケーションに一つだけと仮定できるので、プロセスを特定できればなんとかなりそうです。
    
    
    Imports System
    Imports System.Linq
    Imports System.Diagnostics
    Imports System.Runtime.InteropServices
    Imports System.Text
    
    Module Program
    
        Private Const USER32 As String = "user32.dll"
    
        Structure RECT
            Public Left As Integer, Top As Integer, Right As Integer, Bottom As Integer
        End Structure
    
        <DllImport(USER32)>
        Private Function GetWindowText(ByVal hwnd As Integer, ByVal lpString As StringBuilder, ByVal cch As Integer) As Integer
        End Function
    
        <DllImport(USER32)>
        Private Function GetWindowRect(ByVal hWnd As IntPtr, ByRef lpRect As RECT) As Boolean
        End Function
    
        <DllImport(USER32)>
        Private Function GetWindowThreadProcessId(ByVal hwnd As IntPtr, ByRef lpdwProcessId As Integer) As Integer
        End Function
    
        <DllImport(USER32)>
        Private Function GetClassName(ByVal hWnd As IntPtr, ByVal lpClassName As StringBuilder, ByVal nMaxCount As Integer) As Integer
        End Function
    
        Private Class info
            Public pid As Integer
            Public Handle As IntPtr = IntPtr.Zero
            Public FindText As String
        End Class
    
        Private Delegate Function EnumDialogProc(ByVal hWnd As IntPtr, ByVal lParam As info) As Boolean
    
        <DllImport(USER32, SetLastError:=True, CharSet:=CharSet.Auto)>
        Private Function EnumWindows(ByVal lpEnumFunc As EnumDialogProc, ByVal lParam As info) As Boolean
        End Function
    
        <DllImport(USER32, CharSet:=CharSet.Auto)>
        Private Function EnumChildWindows(ByVal hWndParent As IntPtr, ByVal lpEnumFunc As EnumDialogProc, ByVal info As info) As Boolean
        End Function
    
        Sub Main()
            Dim p As Process = Process.GetProcessesByName("notepad").FirstOrDefault
    
            Dim target As IntPtr = GetSaveButton(p)
            If target <> IntPtr.Zero Then
                Dim rc As New RECT()
                GetWindowRect(target, rc)
                MsgBox(String.Format("ターゲットの座標は ({0},{1}) です。", rc.Left, rc.Top))
            Else
                MsgBox("みつかりませんでした")
            End If
        End Sub
    
        Private Function GetSaveButton(ByVal p As Process) As IntPtr
            Dim info As New info
            info.pid = p.Id
            info.FindText = "保存(&S)"
            EnumWindows(AddressOf EnumDialog, info)
            GC.KeepAlive(info)
            Return info.Handle
        End Function
    
        Private Function EnumDialog(ByVal hwnd As IntPtr, ByVal info As info) As Boolean
            Dim sb As New StringBuilder(1024)
            Const DialogClass As String = "#32770"
            GetClassName(hwnd, sb, sb.Capacity)
            If sb.ToString() = DialogClass Then
                Dim pid As Integer
                GetWindowThreadProcessId(hwnd, pid)
                If pid = info.pid Then
                    If Not EnumChildWindows(hwnd, AddressOf EnumCHildren, info) Then
                        Return False
                    End If
                End If
            End If
            Return True
        End Function
    
        Private Function EnumCHildren(ByVal hWnd As IntPtr, ByVal info As info) As Boolean
            Dim sb As New StringBuilder(1024)
            GetWindowText(hWnd, sb, sb.Capacity)
            If sb.ToString() = info.FindText Then
                info.Handle = hWnd
                Return False
            End If
            Return True
        End Function
    
    End Module
    
記事No.94283 のレス /過去ログ163より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -