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

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

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

全過去ログを検索

<< 0 >>
■7791  Re[1]: HTML動的作成
□投稿者/ 渋木宏明(ひどり) -(2007/09/14(Fri) 19:31:52)
>
    > ASP.NET (C#)でHTMLファイルを簡単に動的作成する方法ってありますか?

    用途にもよりますが、そもそも論的には(とくに現代においては)あまりオススメの手段ではないです。

    「作りっぱなし」で済むようなシステムなら、そういうのもアリかなと思いますが、「作り直し」が発生するような場合は避けた方が無難と思います。

    それでもなお、ってことなら HtmlTextWriter 辺りを使えば、ごく簡単なページであれば比較的楽に自動生成できると思います。

    ただし、HtmlTextWriter で複雑なページを出力しようと思うと、どんどんプログラムが複雑になっていきます。

    で、そういうどん詰まりを解消するべく、ASP.NET が持っている「マスターページ」「コンポーネント指向の画面作成」の機能をフル活用して、目的とする HTML を生成するような「システム」「フレームワーク」の類を自作することは可能でしょう。結構しんどいだろうケド。
記事No.7790 のレス /過去ログ19より / 関連記事表示
削除チェック/

■7432  Re[2]: WEBアプリケーションをサーバーに移行して表示されたエラー
□投稿者/ Tama -(2007/09/05(Wed) 16:16:02)
    ありがとうございます。
    サーバー側にてブラウザを起動したところ、以下のエラーが表示されました。

    machine.configの設定を変更した部分だと思います。

    どの様にすれば宜しいでしょうか?allowDefinitionを違う記述にすればいいのでしょうか?
    ご存知であればご教示下さいませ。

    '/Test' アプリケーションでサーバー エラーが発生しました。
    --------------------------------------------------------------------------------

    構成にエラーがあります。
    説明: この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下のエラーの詳細を確認し、構成ファイルに変更を加えてください。

    パーサー エラー メッセージ: 'allowDefinition' は予期しないトークンです。有効なトークンはスペースです。 行 59、位置 42 です。

    ソース エラー:


    行 57: <section name="clientTarget" type="System.Web.Configuration.ClientTargetSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    行 58: <section name="compilation" type="System.Web.Configuration.CompilationSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    行 59: <section name="customErrors "allowDefinition="Everywhere" type="System.Web.Configuration.CustomErrorsSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    行 60: <section name="deployment" type="System.Web.Configuration.DeploymentSection, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineOnly" />
    行 61: <section name="deviceFilters" type="System.Web.Mobile.DeviceFiltersSection, System.Web.Mobile, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />


    ソース ファイル: C:\WINNT\Microsoft.NET\Framework\v2.0.50727\Config\machine.config 行: 59


    --------------------------------------------------------------------------------
    バージョン情報: Microsoft .NET Framework バージョン:2.0.50727.42; ASP.NET バージョン:2.0.50727.210
記事No.7394 のレス /過去ログ19より / 関連記事表示
削除チェック/

■16847  Re[8]: 皆さん、住所の文字数は何文字?
□投稿者/ はつね -(2008/04/11(Fri) 16:07:39)
>
    No16843 (PATIO さん) に返信
    > 地元の方は国土地理院が認識している住所で表現しているケースは殆ど無くて
    > 上記のような表現が使われていると言う話は知っていますけれど、
    > できれば すっきりした住所の方を正式な表現にしてほしい。(^^;

    そういったものをシステム化の御旗の元、画一化または切り捨てていいかどうかはまた別の話だと思います。
    大人の事情で実装しないというのもあるとは思いますが、同時に、たかが住所(されど住所)のフィールド長の問題で切り捨てていいものかどうか、考えさせられる問題ですね。
記事No.16739 のレス /過去ログ34より / 関連記事表示
削除チェック/

■47257  Re[3]: 再描画について・・・
□投稿者/ 通り過ぎ -(2010/02/23(Tue) 10:49:25)
記事No.47245 のレス /過去ログ80より / 関連記事表示
削除チェック/

■55358  MDBに画像を保存した後、読み込んでPictureboxに
□投稿者/ ももす -(2010/11/28(Sun) 07:40:58)

    分類:[C#] 

    開発環境:VisualStudio2005 
    使用言語:C#
    使用DB:mdb(Access2003)

    お世話になります。
    どうしてもわからなくなり、ここに投稿させていただきました。

    さっそくですが、やろうとしている事は下記になります。
    下記の1については問題なくできますが、どうしても'2.'と'3.'でつまづいており、
    '4.'の段階までいけずに困っています。

    *****************************************************************
    *目的1:
    〜保存〜
    1.画像を取り込む
    2.Button1を押すと、画像をレコードの指定のカラムに書き込む
    〜読み込み〜
    3.Button2を押すと、レコードの指定のカラムから(2.で保存した)画像を取り込む
    4.取り込んだ画像をpicturebox1に表示


    *****************************************************************
    *別案:
    別案として、下記方法を試して実行する事はできましたので、
    上記方法でのやり方をお願いします。
    〜保存〜
    button1を押すと・・・
    1.画像を取り込む
    2.画像をファイルとして保存
    3.保存場所のパスをレコードに書き込む
    〜読み込み〜
    button2を押すと・・・
    4.レコードからファイルパスを取り込む
    5.ファイルパスから画像を取り込む
    6.取り込んだ画像をpictureboxに表示する


    *****************************************************************
    *試した事:
    下記URLを参考に、画像をシリアライズしてmdbに書き込み、
    mdbから読み込んでデシリアライズしてpicturebox1に画像を表示
    http://hwm5.gyao.ne.jp/cocoa/csharptips/serialize_binaryfileserialize.htm
    〜保存〜
    1.画像(bmp)を取り込む
    2.Button1を押すと、画像をシリアライズしてbyte配列に格納
    3.シリアライズしたbyte配列をSQLのInsert文でTestTableに挿入
    4.(確認)mdbをAccessで開き、'TestTable'を開くと'Data'には'ロングバイナリデータ'と書かれているので
     書き込みに成功している?
    〜読み込み〜
    5.Button2を押すと、TestTableの指定のカラムからデータを取り込む(レコード番号はテスト用のため1)
    6.データをデシリアライズする ←ここでエラー
    6.取り込んだ画像をpicturebox1に表示


    *****************************************************************
    エラー内容
    'System.Runtime.Serialization.SerializationException' のハンドル
    されていない例外が mscorlib.dll で発生しました。

    追加情報: 入力ストリームは有効なバイナリ形式ではありません開始コンテンツ (バイト):
    15-1C-38-00-02-00-00-00-16-00-0E-00-14-00-2A-00-FF ...


    コードは下記になります。
    ***************************ここから**********************************
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;

    using System.IO;
    using System.Runtime.Serialization;
    using System.Runtime.Serialization.Formatters.Binary;

    namespace Serialize
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    public class SerializeClass
    {
    //string型をImage型に変更
    public Image ImageMember;
    }


    //string型からObject型に変更
    static public byte[] Serialize(Image serializeObject)
         〜 省略 〜

    //string型からbyte配列型に変更
    static public object Deserialize(byte[] bytesData, SerializationBinder binder)
         {
    //デシリアライズしたオブジェクト
    object deserializedData;

    //バイト配列のメモリストリームを作成
    using (MemoryStream memoryStream = new MemoryStream(bytesData))
    {
    //シリアライズ/デシリアライズをするBinaryFormatterを作成
    BinaryFormatter binFormatter = new BinaryFormatter();

    //デシリアライズ中に読み込むクラスを制御するバインダをセット
    binFormatter.Binder = binder;

    //メモリストリームからオブジェクトをシリアライズ
    deserializedData = binFormatter.Deserialize(memoryStream); ←ここでエラー

    //メモリストリームを閉じる
    memoryStream.Close();
    }

    //デシリアライズしたオブジェクトを返す
    return deserializedData;
    }
    //保存ボタン
    private void button1_Click(object sender, EventArgs e)
    {
    // 画像のURL
    Image _bmp = Image.FromFile("C:\\testBMP.bmp");

    //シリアライズテスト用オブジェクトを作成
    SerializeClass serialize = new SerializeClass();
    serialize.ImageMember = _bmp;

    //オブジェクトをバイト型配列にシリアライズ
    byte[] bytes = Serialize(serialize);

    /*
    //DBにデータ保存
    DataRow drow;
    System.Data.OleDb.OleDbDataAdapter dAdp;
    DataSet dSet = new DataSet("TestTable");

    System.Data.OleDb.OleDbConnection cn = new System.Data.OleDb.OleDbConnection();

    cn.ConnectionString ="Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=TestMDB.mdb;";
    cn.Open();
    System.Data.OleDb.OleDbCommand com = new System.Data.OleDb.OleDbCommand(
    "insert into TestTable(Data) values('" + bytes + "')",cn);
    try{
    com.ExecuteNonQuery();
    cn.Close();
    MessageBox.Show("保存成功","通知");
    }
    catch(Exception ex)
    {
    cn.Close();
    MessageBox.Show(ex.Message);
    }
    }

    //読み込み&表示ボタン
    private void button2_Click(object sender, EventArgs e)
    {
    //DBにデータ保存
    System.Data.OleDb.OleDbDataAdapter dAdp;
    DataSet dSet = new DataSet("TestTable");
    System.Data.OleDb.OleDbConnection cn = new System.Data.OleDb.OleDbConnection();
    cn.ConnectionString ="Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=TestMDB.mdb;";
    dAdp = new System.Data.OleDb.OleDbDataAdapter("SELECT TestTable.Data FROM TestTable", cn);
    dAdp.Fill(dSet, "TestTable");
    int c = dSet.Tables["TestTable"].Rows.Count;
    if (c > 0)
    {
    Byte[] byteBLOBData = new Byte[0];
    byteBLOBData = (Byte[])(dSet.Tables["TestTable"].Rows[c - 1]["Data"]);
    SerializeClass deserialize = Deserialize(byteBLOBData, null) as SerializeClass;
    //MemoryStream stmBLOBData = new MemoryStream(deserialize.ImageMember);

    pictureBox1.Image = deserialize.ImageMember;

    }
    cn.Close();

    Byte[] byteImageData = new Byte[0];

    byteImageData = (byte[])drow.ItemArray[0];

    //バイト型配列の内容をデシリアライズしてオブジェクトを復元
    SerializeClass deserialize = Deserialize(byteImageData, null) as SerializeClass; ←ここでエラー

    pictureBox1.Image = deserialize.ImageMember;

    }
    }
    }
    ***************************ここまで**********************************
    クラス=SerializeClass、メソッド=Serialize、Deserializeについては下記URLを
    参考に引数をstring型から各型に変更したものになります。
    http://hwm5.gyao.ne.jp/cocoa/csharptips/serialize_binaryfileserialize.htm

    *********************************************************************
    テスト用の環境は下記になります。
    *テスト用環境
    MDBのテーブル構造:
    MDBファイル名:TestMDB.mdb
    テーブル名:TestTable
    フィールド名|データ型
    Data  |OLEオブジェクト型

    テスト用フォーム内構成
    form1
    └ picturebox1
    └ button1
    └ button2

    取り込む画像形式:bmp(jpg,gifは尚可)


    ファイル容量の増加及びそれによるDBの読込速度の低下、mdbの容量限界など、
    後者の別案の方がDBの仕様的に良いのは理解しているつもりですが、
    どうしても前者の'目的1'を解決したい為、何か基本的な所でつまづいてるのでしょうが、
    答えが判る方はぜひご教示願います。
    尚、VB.netはまだよく判らない為、C#でのご回答をよろしくお願いします。


    ちなみに余談ですが、この問題に行き詰ってからはや3日たった状態です(;´Д`A ```


    参考にしているURL:
    オブジェクトをバイナリファイルにシリアライズ/デシリアライズする
      http://hwm5.gyao.ne.jp/cocoa/csharptips/serialize_binaryfileserialize.htm
    Visual C# でデータベースから PictureBox コントロールに画像を直接コピーする方法(SqlServer)
      http://support.microsoft.com/kb/317701/ja
親記事 /過去ログ92より / 関連記事表示
削除チェック/

■63712  Re[2]: Listデータの隠蔽の方法
□投稿者/ 亜守 -(2012/09/30(Sun) 12:42:20)
    No63711 (shu さん) に返信

    確かに、その通りですね。
    例えば、特定のキーにより要素を検索して返すだとか、N番目の要素を返すだとか、
    そういった類のものは、それで行けそうです。

    呼び元で、foreachを使いたい場合は、List<Data>型として公開する必要があるので、
    その場合は他に方法はないですかね?

    > ■No63710 (亜守 さん) に返信
    >
    > DataManagerにList<Data>の公開したいメソッドをすべて実装すればよいです。
    > List<Data>型として公開したいのであれば提示されたようにしてもよいと思います。
記事No.63710 のレス /過去ログ107より / 関連記事表示
削除チェック/

■69633  Re[2]: Tabコントロールに割り振られたイベントハンドラ呼び出し
□投稿者/ morimori -(2014/01/15(Wed) 14:53:11)
    shuさん

    中間的な方法で試してみましたが、同じインデックスを設定してもSelectイベントは発生しませんでした。
    選択しているTabPageのオブジェクトは取得できるのですが、TabPageによってそれぞれ
    イベントハンドラに当てているメソッドが違うので

    例)○○Designer.csより
    this.ribbonTab1.Select += new System.EventHandler(this.TypeASelect);
    this.ribbonTab2.Select += new System.EventHandler(this.TypeBSelect);
    this.ribbonTab3.Select += new System.EventHandler(this.TypeCSelect);
    this.ribbonTab4.Select += new System.EventHandler(this.TypeDSelect);
    this.ribbonTab5.Select += new System.EventHandler(this.TypeESelect);

    イベントハンドラにあてはめているメソッドを呼び出したいのですが、
    どのように呼び出せばよろしいでしょうか。

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

■89765  Re[3]: カスタムインストーラ MSIHANDLEのリーク
□投稿者/ とっちゃん -(2018/12/21(Fri) 13:05:22)
    No89764 (ぽんすけ さん) に返信
    > C:\Program Filesの下のアプリのEXEを含むフォルダ、
    > またプログラム内で作成したフォルダをアンインストール時の
    > カスタム動作で消そうとしていますが、消えていませんでした。
    >
    プログラム内で作成したフォルダというのはどこ作成したのでしょうか?
    それによっても状況は変わります。


    > カスタム動作のinstall, uninstall時の関数に、それぞれ
    > MessageBoxを入れてみましたところ、install時には表示されますが、
    > uninstall時には表示されませんでした。
    >
    > アンインストール処理が実行されていないということでしょうか。。。

    どんな形で実装しているかわからないので、詳しいことはわかりませんが
    「表示されない」ということは、少なくとも
    「表示処理部分(MessageBox呼び出し場所)は実行されていない」
    ということになります。


    > 調査する方法があればご教示お願いします。
    >
    まずは、詳細ログをとってそれを詳しく調査ですね。
    エラー発生個所だけじゃなく、その前後(というか前)も重要だったりします。
    また、場合によってはインストール時のログと突き合せたほうがいい場合もあるかもしれません。

    それ以外では、段取り自体が問題ないのか?という部分のレビューも重要ですね。

    そしてそれ以上に重要なのがインストール処理全体の設計に間違いがないか?というあたり。

    特にフォルダ作成がプログラム内ということなので、
    「それはインストーラでクリーンナップするのか?」
    という部分はかなり重要です。

    プログラムの責務と、実行権限に起因する問題は解決不可能な問題も含むので
    簡単な話ではありません。

    アプリケーションのインストール条件とかいろいろなものを組み合わせた結果として
    PerUsersにすれば解決するのでそっちに切り替えるという選択もあります。

    まぁ、その場合インストーラから変更ですけど。。。

    一応。。。
    詳細ログにはマシン固有の情報も含まれています。
    なので、不特定多数の人が見れるところ(わんくま掲示板を含む)に公開してはいけません。
記事No.89753 のレス /過去ログ154より / 関連記事表示
削除チェック/

■89801  Re[4]: カスタムインストーラ MSIHANDLEのリーク
□投稿者/ ぽんすけ -(2018/12/27(Thu) 18:21:05)
    No89765 (とっちゃん さん) に返信

    とっちゃんさま、ありがとうございます。
    別件で手を取られていまして、返答が遅くなってしまいました。
    申し訳ございません。

    今の作業、落ち着いたらまた本件調査したいと思います、

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



<< 0 >>

パスワード/

- Child Tree -