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

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

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

全過去ログを検索

<< 0 >>
■22901  Re[1]: エクセルのプロセスが残る環境と残らない環境
□投稿者/ 魔界の仮面弁士 -(2008/08/05(Tue) 15:46:48)
    2008/08/05(Tue) 16:04:51 編集(投稿者)

    # 既に回答が付いていますが、補足の意味を込めて。

    No22887 (ぐっちょん さん) に返信
    > xlSheet.Cells.NumberFormatLocal = "@" '全体を文字列に
    ここで、Range オブジェクトの解放処理が漏れています。

    Dim xlRange As Excel.Range = xlSheet.Cells
    xlRange.NumberFormatLocal = "@"
    MRComObject(xlRange)

    > xlSheet.Range("A1").Resize(1, 10).Value = dataArray '範囲指定貼付(これをループで行ってます)
    ここで、Range オブジェクトがさらに 2 つ解放漏れ。

    xlRange = xlSheet.Range("A1")
    Dim xlResizedRange As Excel.Range = xlRange.Resize(1, 10)
    xlResizedRange.Value = dataArray
    MRComObject(xlResizedRange)
    MRComObject(xlRange)


    > '================== 終了処理 =====================
    処理中にエラーが発生した場合に備えるために、これらは本来、
    Finally ブロックなどに配置されるべきとされています。


    > オブジェクトの解放
    > Private Sub MRComObject(Of T As Class)(ByRef objCom As T)
    End Try がありませんが、実際にはどのような実装になっているのでしょうか?


    > If System.Runtime.InteropServices.Marshal.IsComObject(objCom) Then
    > System.Runtime.InteropServices.Marshal.FinalReleaseComObject(objCom)
    > End If
    多くのケースでは、FinalReleaseComObject を使う必要は無く、
    ReleaseComObject をそれぞれ 1 回ずつ呼ぶだけで十分かと思います。

    ReleaseComObject ではなく、FinalReleaseComObject を使った実装にしてしまうと、
    下記のような場合に、★の行を実行できなくなってしまいますので、その点は注意してください。


     Sub Main()
        :
      xlSheet1 = xlSheets(1)
      xlSheet1.Name = "Template"
      Call Copy(xlSheets)
      xlSheet1.Select()  '★ Sub Copy 内で強制解放させてしまうと、この行の実行が失敗する
        :
     End Sub

     Sub Copy(ByVal xlSheets As Excel.Sheets)
        :
      Dim xlSheet As Excel.Worksheet = DirectCast(xlSheets.Item(n), Excel.Worksheet)
        :
      MRComObject(xlSheet)
        :
     End Sub
記事No.22887 のレス /過去ログ43より / 関連記事表示
削除チェック/

■91880  Re[1]: スマホンで『LINE』や『微信』を使ってパソコンにメッセージ
□投稿者/ とっちゃん -(2019/08/08(Thu) 10:21:44)
    > スマホンで『LINE』や『微信』を使ってパソコンにメッセージを送信し、
    > パソコン側がこのメッセージを受信したら自動返信するようなソフトを作成するには
    > どんなソフト環境(ライブラリーなど)とコンピューター言語が必要でしょうか。
    >
    欲しいのはいわゆる「チャットボット」と呼ばれる仕組みですかね。

    LINE については、LINE Messaging API というAPIを使って行います。
    まずは自分で調べてみることをお勧めします。

    微信にも同じようなたぶんAPIがあると思います(今回初めて聞いたので調べてもいませんが)。

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

■91902  Re[2]: スマホンで『LINE』や『微信』を使ってパソコンにメッセージ
□投稿者/ 暖和 -(2019/08/09(Fri) 07:08:48)
    No91880 (とっちゃん さん) に返信

    貴重な情報ありがとうございます!!

    > 欲しいのはいわゆる「チャットボット」と呼ばれる仕組みですかね。
    > LINE については、LINE Messaging API というAPIを使って行います。


    「チャットボット」って初耳ですね。よく調べてみます。

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



<< 0 >>

パスワード/

- Child Tree -