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

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

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

全過去ログを検索

<< 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 >>
■1809  .NET関連書籍
□投稿者/ ハーシェル -(2007/03/07(Wed) 01:02:35)

    分類:[.NET 全般] 

    こんばんわ。

    皆さんもご存じと思いますが、WindowsDeveloperMagazineが数ヶ月前に休刊となりました。
    今まで購読していたので残念なんですが、それと共に.NET関連の情報を手に入れる書籍が無くなりました。
    そこでコレに続く書籍を探しています。
    何かお勧めはないでしょうか?
    読んでいた方ならどういった内容かわかって、私の求める情報も大体推測もつくと思いますが
    読んでない方も当然いると思うので、大体の内容を書いておきます。

    当然のように.NET関連の情報があります。
    通常プログラムから、Webプログラム、DBプログラムの解説などがありました。
    他には新製品の情報や、開発ツールの情報などもありました。
    個人ではあまり使わないような開発ツールの紹介などもあって便利でした。

    大雑把にはこういう感じです。

    自分はWebプログラマなので、特に.NETでのWebプログラム及びDB関連プログラム。
    そういった情報が載っている雑誌だと嬉しいです。
親記事 /過去ログ10より / 関連記事表示
削除チェック/

■1815  Re[1]: .NET関連書籍
□投稿者/ Jitta -(2007/03/07(Wed) 07:30:40)
    .NET Expert
    開発の現場
記事No.1809 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1879  Re[2]: .NET関連書籍
□投稿者/ ハーシェル -(2007/03/07(Wed) 23:45:51)
    No1815 (Jitta さん) に返信
    > .NET Expert
    > 開発の現場
    .NET Expertよさそうですね。
    今度見つけたら買ってみようと思います。
    開発の現場はSE向けみたいな感じでしょうか。
    日曜プログラマレベルの自分にはちょっと早い気がしたので、もうちょっとレベルアップしたら読んでみようと思います。

    ありがとうございました。
    他にもどしどしいい雑誌情報待ってます。
記事No.1809 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1880  Re[3]: .NET関連書籍
□投稿者/ HIRO -(2007/03/07(Wed) 23:57:48)
>
記事No.1809 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1869  サンプルの「COM オブジェクトの参照カウントを解放する」で
□投稿者/ ボビン -(2007/03/07(Wed) 19:21:06)

    分類:[VB.NET (Windows)] 

    こんばんは、ボビンと申します。

    いつもサイトを開発の参考にさせていただいています。
    そこで疑問があり、ご質問させていただきました。よろしくお願いします。

    サンプルにある、「COM オブジェクトの参照カウントを解放する」のVB.NETですが、

    このように書くのは間違いでしょうか?

    ↓↓↓

    ' COM オブジェクトの参照カウントを解放する

    ' VB.NET
    ' 必要な変数は Try の外で宣言する
    Dim xlApplication As Excel.Application

    ' COM オブジェクトの解放を保証するために Try 〜 Finally を使用する
    Try
    xlApplication = New Excel.Application()

    ' 警告メッセージなどを表示しないようにする
    xlApplication.DisplayAlerts = False

    Dim xlBooks As Excel.Workbooks = xlApplication.Workbooks
    Dim xlBook As Excel.Workbook = xlBooks.Add()
    Dim xlSheets As Excel.Sheets = xlBook.Worksheets
    Dim xlSheet As Excel.Worksheet = DirectCast(xlSheets(1), Excel.Worksheet)
    Dim xlCells As Excel.Range = xlSheet.Cells
    Dim xlRange As Excel.Range = DirectCast(xlCells(6, 4), Excel.Range)

    Try
    ' Microsoft Excel を表示する
    xlApplication.Visible = True

    ' 1000 ミリ秒 (1秒) 待機する
    System.Threading.Thread.Sleep(1000)

    ' Row=6, Column=4 の位置に文字をセットする
    xlRange.Value2 = "あと 1 秒で終了します"

    ' 1000 ミリ秒 (1秒) 待機する
    System.Threading.Thread.Sleep(1000)

    Finally
    If Not xlRange Is Nothing Then
    System.Runtime.InteropServices.Marshal.ReleaseComObject(xlRange)
    End If
    If Not xlCells Is Nothing Then
    System.Runtime.InteropServices.Marshal.ReleaseComObject(xlCells)
    End If
    If Not xlSheet Is Nothing Then
    System.Runtime.InteropServices.Marshal.ReleaseComObject(xlSheet)
    End If
    If Not xlSheets Is Nothing Then
    System.Runtime.InteropServices.Marshal.ReleaseComObject(xlSheets)
    End If

    If Not xlBook Is Nothing Then
    Try
    xlBook.Close()
    Finally
    System.Runtime.InteropServices.Marshal.ReleaseComObject(xlBook)
    End Try
    End If
    If Not xlBooks Is Nothing Then
    System.Runtime.InteropServices.Marshal.ReleaseComObject(xlBooks)
    End If
    End Try
    Finally

    If Not xlApplication Is Nothing Then
    Try
    xlApplication.Quit()
    Finally
    System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApplication)
    End Try
    End If
    End Try

    ↑↑↑

    Try〜Finallyがたくさんあるところを、まとめただけですが、
    試してみたところ
    サンプルも、こちらのコードもタスクマネージャのプロセスから"EXCEL.EXE"は消えました。
    こちらの書き方では、問題がありますでしょうか。
    サンプルの書き方でないと、やはり正しく解放されないのでしょうか?
    それとも、わかりやすくするために、Try〜Finallyがたくさんある、サンプルの書き方となっているのでしょうか?

    ズレた質問だったらすみませんが、よろしくお願いします。
    環境はwin2K + VB2005 + office2003 です。

親記事 /過去ログ10より / 関連記事表示
削除チェック/

■1871  Re[1]: サンプルの「COM オブジェクトの参照カウントを解放する」で
□投稿者/ 渋木宏明(ひどり) -(2007/03/07(Wed) 19:43:12)
>
    > Try〜Finallyがたくさんあるところを、まとめただけですが、

    Finally 節の中で、ReleaseComObject() が例外を投げてきたらどうします?
記事No.1869 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1872  Re[2]: サンプルの「COM オブジェクトの参照カウントを解放する」で
□投稿者/ じゃんぬねっと -(2007/03/07(Wed) 19:47:17)
>
記事No.1869 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1885  Re[3]: サンプルの「COM オブジェクトの参照カウントを解放する」で
□投稿者/ ボビン -(2007/03/08(Thu) 09:52:46)
記事No.1869 のレス / END /過去ログ10より / 関連記事表示
削除チェック/

■1691  Webbrowserにフォーカスを当てない方法
□投稿者/ ごまさば -(2007/03/02(Fri) 18:52:34)

    分類:[C# (Windows)] 

    開発環境 C#2005 Express Edition
    Windows XP SP2

    ごまさばと申します。
    いつも参考にさせていただいております。

    表題の件ですが、現在、指定したURLを指定時間間隔で自動的に巡回するようなブラウザを
    開発中です。

    そこで問題になっているのが、
    「意図しないタイミングでフォームにフォーカスが当たってしまう」
    です。

    いろいろ調べてみたところ、
    while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
    {
    Application.DoEvents();
       }
    の部分で、フォームにフォーカスが当たってしまっているようなのですが、これを阻止する
    方法が分かりません。

    初歩的な内容かもしれませんが、ヒントをいただければと思います。

    よろしくお願いいたします。
親記事 /過去ログ10より / 関連記事表示
削除チェック/

■1693  Re[1]: Webbrowserにフォーカスを当てない方法
□投稿者/ 渋木宏明(ひどり) -(2007/03/02(Fri) 19:26:40)
>
    >これを阻止する方法が分かりません。

    ブラウザコントロールが自発的に自分にフォーカスを当てなおしてるはずなので、完全に阻止する方法はおそらく無いです。

    自分(=コード)でフォーカスを当てなおすしかないんじゃないかな。
記事No.1691 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1699  Re[2]: Webbrowserにフォーカスを当てない方法
□投稿者/ ごまさば -(2007/03/03(Sat) 10:50:27)
    No1693 (渋木宏明(ひどり) さん) に返信
    ごまさばです。

    ご返信ありがとうございます。

    > ブラウザコントロールが自発的に自分にフォーカスを当てなおしてるはずなので、完全に阻止する方法はおそらく無いです。
    > 自分(=コード)でフォーカスを当てなおすしかないんじゃないかな。

    そうですか。。。
    ということは、対策としては、
    1.あらかじめ、現在アクティブになっているアプリを調べておいて、
      Application.DoEventsでフォーカスが移動してしまった場合に元に
      戻す。

    2.自前でWebbrowserコントロールを作る。

    くらいしかないですかね。
    2.は私の力では無理っぽいので、1.のやり方を調べてみます;;

    ありがとうございました。
記事No.1691 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1700  Re[3]: Webbrowserにフォーカスを当てない方法
□投稿者/ 渋木宏明(ひどり) -(2007/03/03(Sat) 11:10:17)
>
    > 1.あらかじめ、現在アクティブになっているアプリを調べておいて、
    >   Application.DoEventsでフォーカスが移動してしまった場合に元に
    >   戻す。

    「フォーカスが。。。」という話でしたが、ひょっとしてトップレベルウィンドウのZオーダーまでが変化してしまうという話ですか?

    ブラウザコンポーネントは、ウィンドウの前後関係までには手を出さないはずです。
記事No.1691 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1727  Re[4]: Webbrowserにフォーカスを当てない方法
□投稿者/ ごまさば -(2007/03/04(Sun) 21:20:45)
    お世話になります、ごまさばです。

    >
    > 「フォーカスが。。。」という話でしたが、ひょっとしてトップレベルウィンドウのZオーダーまでが変化してしまうという話ですか?
    >
    他のアプリケーションを使用していると、突然パッと最前面に出てくるので、そういうことですね。
    とりあえずuser32.dllをインポートしてGetForegroundWindowとSetForegroundWindowでしのぎましたが、
    ちらっと出てくるのでやはり挙動としてはいまいちです。

    > ブラウザコンポーネントは、ウィンドウの前後関係までには手を出さないはずです。
    >
    ということは、ブラウザが悪さしているのではなく、他の要因なのでしょうか。。
    他にやっていて怪しいことといえば、RichTextboxをFocus()・Refresh()していることと、
    Labelを記入していることくらいです。

    以上、よろしくお願いいたします。

記事No.1691 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1729  Re[5]: Webbrowserにフォーカスを当てない方法
□投稿者/ Hirotow -(2007/03/04(Sun) 22:11:55)
>
    >「フォーカスが。。。」という話でしたが、ひょっとしてトップレベルウィンドウのZオーダーまでが変化してしまうという話ですか?

    >ブラウザコンポーネントは、ウィンドウの前後関係までには手を出さないはずです。

    ZオーダーというよりはJavaScriptでwindow.focus()されているとかが原因のような気がするのでこのあたりをブロックしてみてはどうでしょうか?
記事No.1691 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1772  Re[6]: Webbrowserにフォーカスを当てない方法
□投稿者/ ごまさば -(2007/03/05(Mon) 23:31:49)
    お世話になります、ごまさばです。

    > ZオーダーというよりはJavaScriptでwindow.focus()されているとかが原因のような気がするのでこのあたりをブロックしてみてはどうでしょうか?

    なるほど。それも考えられますね。
    確かに、必ずしも最前面に出てくるわけではないので、出てくるページのJavaScriptを
    チェックしてみます。


    ありがとうございました。
記事No.1691 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1870  Re[7]: Webbrowserにフォーカスを当てない方法
□投稿者/ ごまさば -(2007/03/07(Wed) 19:27:14)
    No1772 (ごまさば さん) に返信
    お世話になります、ごまさばです。

    調べてみたところ、window.focus()が使用されていました。
    JavaSprict対策を考えます。

    ありがとうございました。
記事No.1691 のレス / END /過去ログ10より / 関連記事表示
削除チェック/

■1901  Re[8]: Webbrowserにフォーカスを当てない方法
□投稿者/ Hirotow -(2007/03/08(Thu) 15:09:24)
>
    2007/03/08(Thu) 15:10:18 編集(投稿者)
    2007/03/08(Thu) 15:10:12 編集(投稿者)

    No1870 (ごまさば さん) に返信
    > ■No1772 (ごまさば さん) に返信
    > お世話になります、ごまさばです。
    >
    > 調べてみたところ、window.focus()が使用されていました。
    > JavaSprict対策を考えます。
    >
    > ありがとうございました。

    DocumentCompleted (できたらもっと早い段階)でソースコードを無害化(サニタライズ)するとか。

    HtmlElement htmlelm = myBrowser.Document.DocumentElement.Parent;
    htmlelm.InnerHTML = htmlelm.InnerHTML.Replace("window.focus()","").Replace("focus()","");

    こんな感じでいけると思います。
    できたら正規表現で無害化してやったほうがよいです。
記事No.1691 のレス / END /過去ログ10より / 関連記事表示
削除チェック/

■1898  可変データの取得について
□投稿者/ あき坊 -(2007/03/08(Thu) 14:21:57)

    分類:[C# (Windows)] 

    こんにちは、あき坊です。

    恥ずかしながら初心者的な疑問がありましたので。投稿させていただきました。
    VC使用時に可変データをINIファイルに持たせていましたが、C#ではその様なものはないのでしょうか?

    恥を忍んでの質問ですが、よろしくお願いします。
親記事 /過去ログ10より / 関連記事表示
削除チェック/

■1899  Re[1]: 可変データの取得について
□投稿者/ Blue -(2007/03/08(Thu) 15:00:54)
記事No.1898 のレス /過去ログ10より / 関連記事表示
削除チェック/

■1900  Re[1]: 可変データの取得について
□投稿者/ Pandora -(2007/03/08(Thu) 15:05:06)
    > VC使用時に可変データをINIファイルに持たせていましたが、C#ではその様なものはないのでしょうか?

    アプリケーションの設定情報を保持したいと考えているのであれば、
    アプリケーション構成ファイル(App.config)を使用すれば良いと思います。

記事No.1898 のレス /過去ログ10より / 関連記事表示
削除チェック/

<前の20件 | 次の20件>

<< 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 >>

ヒット件数が多いので過去ログ1〜10 までの検索結果 / 過去ログ11からさらに検索→

パスワード/

- Child Tree -