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

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

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

全過去ログを検索

<< 0 >>
■5023  Re[3]: WEBページを印刷する方法
□投稿者/ はつね -(2007/07/02(Mon) 21:22:00)
>
    No5014 (鉄平 さん) に返信
    >>C#で「Windowsアプリ」からWebページを印刷する方法でしょうか?
    >>C#で「Webアプリ」からWebページを印刷する方法でしょうか?
    >
    >とりあえず、わたし達はは高校の部活でWEBアプリケーションをC#で作ろうとしていますが、参考になりそうな
    >WEBページをもとにプログラムを打っていますが、印刷プレビューを表示しても白紙のままだし、ましてやプリン
    >タに印刷することもできません。誰か助けてください。本当にプログラムのことを考えることが苦手なんです。

    # 質問に答えているようで「とりあえず〜」と答えないのは、プログラムの事を考えるのが苦手か否かとは無関係

    印刷プレビューというのは、ブラウザにある[ファイル]メニューの下のやつですか?
    もしそうならば、Webアプリでは何も工夫する必要がありません(画面表示くらいは必要だけど)。ブラウザの機能で印刷できます。

    そうでなくて、Webアプリに[印刷プレビュー]というというボタンなりを配置して、それを押したら印刷するという事でしょうか。
    もしそうならば、どのようなコードを書いて白紙のプレビューが出たのでしょうか。
    IE限定でクライアントサイドでやろうとしているのか、それともASP.NETでサーバサイドでやろうとしているのかなど、やりたい事の情報が不足していますよ。
記事No.4850 のレス /過去ログ15より / 関連記事表示
削除チェック/

■83378  Re[9]: これらの引数で呼び出されるアクセス可能なNewがないため・・
□投稿者/ 魔界の仮面弁士 -(2017/03/19(Sun) 23:52:23)
    No83376 (惹起 さん) に返信
    > これはどのようにして回避して使えば良いですか?
    先の回答と一緒ですよ。基本的には参照設定してアーリーバインドとするか、
    レイトバインドなら CallByName で対処するかです。


    > あと、ImageMagickを使うときに
    > Dim mi As Object = CreateObject("ImageMagickObject.MagickImage")
    > というようにObject宣言する必要があるのですが、
    > これもoption strict onでエラーとなってしまいます。

    ImageMagickObject.dll (ImageMagic Object x.x Type Library)を参照設定して、
     Dim mi As New ImageMagickObject.MagickImage()
    のように、固有の型で処理するようにします。

    もしくは先にも書いたように CallByName を使うかですね。

    いずれの方法を使うにしても、使用したオブジェクトの解放処理のために
    Marshal.ReleaseComObject メソッドでの後始末が必要です。

    ※ImageMagickObject のスレッドモデルについては未確認。
記事No.83350 のレス /過去ログ142より / 関連記事表示
削除チェック/

■83400  Re[10]: これらの引数で呼び出されるアクセス可能なNewがないため・・
□投稿者/ 惹起 -(2017/03/21(Tue) 10:22:24)
    No83378 (魔界の仮面弁士 さん) に返信
    > ■No83376 (惹起 さん) に返信
    解決しました。ありがとうございます。
記事No.83350 のレス /過去ログ142より / 関連記事表示
削除チェック/

■83432  Re[1]: 3分後に自動シャットダウン
□投稿者/ 魔界の仮面弁士 -(2017/03/23(Thu) 13:23:44)
    No83431 (ざっく さん) に返信
    > WSH = Nothing
    COM オブジェクトの即時解放を目的としているのなら、これでは不足です。

    VBScript ならば Nothing 代入だけで十分でしたが、
    VB.NET では Marshal.ReleaseComObject メソッドを使う必要があります。


    > If rc = vbOK Or rc = -1 Then
    Or 演算子ではなく、OrElse 演算子を使いましょう。


    > ただ、このコードはCreateObject("WScript.Shell")を使っているため
    > option strictでエラーとなってしまいます。
    > どうすればエラー無しにすることができますか?

    つい先日、 No83366No83378 でも同じような事を書きましたが、
    Option Strict On で利用するのであれば、
     (案1)参照設定して利用する
     (案2)CallByName で対応する
     (案3)リフレクションで対応する
    といった対処になります。

    あるいは Partial Class や Partial Method 等を用いて、
    Popup メソッドの処理部分のみを、Option Strict Off のファイルに逃がすかですね。


    '案1
    Dim wshShell As New IWshRuntimeLibrary.WshShell()
    Dim rc As Integer = wshShell.Popup("シャットダウンしますか?(3分後に自動実行)", 180, "自動シャットダウン", vbOKCancel Or vbQuestion Or vbDefaultButton2)
    System.Runtime.InteropServices.Marshal.ReleaseComObject(wshShell)
    If rc = vbOK OrElse rc = -1 Then


    '案2
    Dim WSH As Object = CreateObject("WScript.Shell")
    Dim rc As Integer = CInt(CallByName(WSH, "Popup", CallType.Method, "シャットダウンしますか?(3分後に自動実行)", 180, "自動シャットダウン", vbOKCancel Or vbQuestion Or vbDefaultButton2))
    System.Runtime.InteropServices.Marshal.ReleaseComObject(WSH)
    If rc = vbOK OrElse rc = -1 Then


    '案3
    Dim WSH As Object = CreateObject("WScript.Shell")
    Dim rc As Integer = CInt(WSH.GetType().InvokeMember( _
      "Popup", System.Reflection.BindingFlags.InvokeMethod, Nothing, _
      WSH, New Object() { _
        "シャットダウンしますか?(3分後に自動実行)", _
        180, _
        "自動シャットダウン", _
        vbOKCancel Or vbQuestion Or vbDefaultButton2 _
      }))
    System.Runtime.InteropServices.Marshal.ReleaseComObject(WSH)
    If rc = vbOK OrElse rc = -1 Then
記事No.83431 のレス /過去ログ142より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -