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 >>
■966  VB6のAscB関数と同等の機能について
□投稿者/ あや -(2005/08/03(Wed) 15:51:53)

    分類:[VB.NET] 


    分類:[VB.NET] 

    いつもお世話になっています。

    VB6でAscB関数を使用していたのですが、VB.NETでこれと同等の機能はないでしょうか。

    掲示板等を検索したら"System.Text.Encoding.GetEncoding"の"GetBytes"を使用する方法があったので下記のようにコーディングしてみたのですが、vb6で実行した場合と戻り値が異なります。
    何かコードが違っているのでしょうか?
    どなたかアドバイスを頂けたらと思います。
    宜しくお願い致します。

    ■VB6のコード
    Dim a As Byte
    a = AscB("あ") ・・・ ★aは、66になります

    ■VB.NETのコード
    Dim enc As System.Text.Encoding = System.Text.Encoding.ASCII
    Dim a As Byte() = enc.GetBytes("あ") ・・・ ★aは、63になります

    【環境】windowsXP SP2,.NETFramework1.1
親記事 /0過去ログ1より / 関連記事表示
削除チェック/

■971  Re[4]: TechEd2005感想
□投稿者/ 88Kouji -(2005/08/03(Wed) 23:20:21)

    分類:[雑談] 

    じゃんぬさん、こんばんわ

    >私とリアルでお逢いしたことがある方は今のところ 3 名 (Naka, Pega, Moo)ですが、
    >来年は一気に増えると宣言しておきます。。。
    その節はよろしくお願いします。
    なんでも手伝えることあったらおっしゃってください。
    どこからともなく参上しますんで(^^)

    で、Day2です。

    参加セッション
    [セッション1]T1-302 .NET におけるアプリケーション アーキテクチャ構築
    [感想1] 既知の内容が多かったのは残念だったけどテクニカルセッションの初っ端としては妥当かなと・・・個人的にはもうちっと踏み込んでもらいたかった。

    [セッション2]T1-401 スマート クライアント アーキテクチャ
    [感想2] 当たり前のことではあるが、スマートクライアントになったからといって全てがハッピーというわけではないし、より一層アーキテクチャー構築への知識が必須になるかなと・・・SOAもOOA/Dもそうだけど動けばOK」、「気合でのりきる」なんていってたらパラダイムシフトにおいてけぼりを食うこと必至ですね(こんな人って結構いますよね orz)

    [セッション3]T3-335 スマート クライアント アプリケーションの開発
    [感想3] セッションの内容は地味でしたが重要性は高いと思われた。

    [セッション4]T3-337 Visual Studio 2005 で改善された Windows フォーム
    [感想4] WinFormの強化がすさまじいですね。やっぱ、スマートクライアントをプッシュするためでしょうか?
    エバンジェリストの方が「これだけWinFormが拡張されたので皆さんはビジネスロジックに集中できますね」的なことおっしゃってたんですが、ちゃんとユーザーを導かないと逆メッセージになるのかなと。
    というのもいつものマイクロソフトの手法ですが「ドラッグアンドドロップでこんなこともできます簡単ですね」なことを「レイヤ分割って何?」みたいな感じのへたれたVBユーザーにガンガンアナウンスすると確実に盲目的に?ビジネスロジックがFormに埋没した一枚岩なアプリを量産すること間違いないですからね・・・orz

    というわけで明日もがんばります!!

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

■958  Re[3]: TechEd2005感想
□投稿者/ じゃんぬ -(2005/08/03(Wed) 09:16:56)
>

    分類:[雑談] 

    こんにちは、じゃんぬ@管理人 です。

    No955に返信(88Koujiさんの記事)
    > > この掲示板の管理人二人とも出不精なので行ってなかったりしますが(^^;;;
    > 今日は中さんがいるものだと思い、お礼を言わねばと会場でキョロってしまいました(^^ 

    あちゃー、今度はちゃんと一緒に行きましょうね > 中さん

    私とリアルでお逢いしたことがある方は今のところ 3 名 (Naka, Pega, Moo)ですが、
    来年は一気に増えると宣言しておきます。。。
記事No.953 のレス /0過去ログ1より / 関連記事表示
削除チェック/

■921  ファイル名とファイル更新日
□投稿者/ ぼいど -(2005/07/29(Fri) 18:07:29)

    分類:[C#] 


    分類:[C#] 

    フォルダ内のファイル名の一覧をリストに表示させる際、

    ついでに更新日も一緒に付けたいと思っています。

    foreach(string Name in Directory.GetFiles(Path,"*.txt") )
    {
     lstBox.Items.Add( Name );
    }

    今現在はファイル名称は取得出来てますが、更新日を付ける方法までは出来てませんのでどなたかお願いします。
親記事 /0過去ログ1より / 関連記事表示
削除チェック/

■913  Re[3]: SortedListで検索後して値取得
□投稿者/ めたるまっくす -(2005/07/29(Fri) 09:13:05)

    分類:[C#] 

    実はですね、構文が解らないです。

    SortedList SList = new SortedList();

    SList.Add(Class.Key,ClassA);

    ていう具合に追加した後、SListからClassAの値をKeyを元に出したいのです。

    GetValueListとかいうメンバを使うのか、それともValuesとういメンバを使うのか。


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

■880  OpenFileDialogについて
□投稿者/ Matsuyama -(2005/07/21(Thu) 16:18:35)

    分類:[VB.NET] 


    分類:[VB.NET] 

    初めまして。松山と申します。

    VB.NETのOpenFileDialogについて質問があります。

    下記のソースを記述し、ボタン押下時にファイル選択ダイアログを表示させ
    そのダイアログにて、大きなファイル(多少処理に時間がかかるサイズ)を
    選択&コピーを行い、コピー中のダイアログが表示されている間に、選択
    ダイアログをキャンセルにて閉じ、さらにアプリを閉じた場合に、プロセス
    が残ってしまい、タスクマネージャにてプロセスの強制終了でしか終了でき
    なくなってしまうのですが、この問題を解決する方法はありますでしょうか?

    参考ソース----------------------------------------------------------
    Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button.Click
    Dim FDlg As New OpenFileDialog

    FDlg.FilterIndex = 1
    If FDlg.ShowDialog() = DialogResult.OK Then
    End If
    FDlg.Dispose()

    End Sub
    ---------------------------------------------------------------------
    解決方法をご存知の方がおられましたらご教授の程よろしくお願いいたします。
親記事 /0過去ログ1より / 関連記事表示
削除チェック/

■846  Re[1]: 小数点を含む切捨てについて
□投稿者/ 魔界の仮面弁士 -(2005/07/12(Tue) 21:58:37)

    分類:[VB.NET] 

    2005/07/12(Tue) 22:05:34 編集(投稿者)

    # 何故、引用してない所まで色が付いてしまうのだろう? (泣)
     
    > このような場合は一体どうすればよいのでしょうか…。お知恵をお貸し下さい。
     
    Doubleではなく、Decimalで演算させてみるとか。
    手元に環境が無いので確認できませんが、こんなイメージかな。(未テスト)
     
    Shared Function ToRoundDown@(ByVal vValue@, ByVal iDigits As Byte)
    Dim vCoef As Decimal = CDec(10 ^ iDigits)
    If vValue < 0 Then vCoef *= -1
    Return Decimal.Floor(vValue * vCoef) / vCoef
    End Function

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

■845  小数点を含む切捨てについて
□投稿者/ らいぶ -(2005/07/12(Tue) 20:58:36)

    分類:[VB.NET] 


    分類:[VB.NET] 

    2005/07/12(Tue) 20:59:33 編集(投稿者)
    2005/07/12(Tue) 20:59:26 編集(投稿者)
    2005/07/12(Tue) 20:59:22 編集(投稿者)

    いつも掲示板を拝見しお世話になっております。

    サンプルの”指定した精度の数値に切り捨てする”を参考に
    させていただき、切捨てを行う関数を作成したのですが
    小数部が13桁を超える値ですと、勝手に四捨五入されてしまい
    困っております…。

    小数点第1位を切り捨てて1001という値が欲しいのですが、1002が帰ってきます。
    どうやら vValue * vCoef の部分で1002と四捨五入されてしまっているようです。
    自力で整数部と小数部を分けて小数部を13桁以内に収めようともしました
    がtoStringした時点でまた四捨五入されるようです。
    (toString.indexof(".")等を用いました)

    このような場合は一体どうすればよいのでしょうか…。お知恵をお貸し下さい。

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    Dim dat As Decimal = "1001.99999999999999"
    TextBox1.Text = ToRoundDown(dat, 0)

    End Sub

    Public Shared Function ToRoundDown(ByVal vValue As Double, ByVal iDigits As Integer) As Double

    Dim vCoef As Double = Math.Pow(10, iDigits)

    If vValue > 0 Then
    Return Math.Floor(vValue * vCoef) / vCoef
    Else
    Return Math.Ceiling(vValue * vCoef) / vCoef
    End If

    End Function

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

■853  Re[4]: DataGridのヘッダについて
□投稿者/ Jitta -(2005/07/14(Thu) 05:10:11)

    分類:[ASP.NET] 

    2005/07/14(Thu) 05:46:48 編集(投稿者)

    > DataGridのBoderStyleはダミーなんですかね。
     だから、『結局、Table要素になるわけで、ItemBind辺りで、今からバインドするのがヘッダに相当する行なのか…』と書いているんですけど。。。
     DataGrid.BorderStyle は、table のボーダーを変更します。
    ┏━┯━┓
    ┃H│H┃
    ┠─┼─┨
    ┃D│D┃
    ┗━┷━┛こうです。
    でも、やりたいのは、
    ┏━┳━┓
    ┃H┃H┃
    ┗━┻━┛つなげられなかった...
    │D│D│
    └─┴─┘こうですよね?
    あ、HeaderStyle.BorderStyle を変更すると、
    ┏━┯━┓
    ┃H│H┃行として、BorderStyleが変更される
    ┗━┷━┛
    │D│D│
    └─┴─┘こうなりますよ?


    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>TEST</title>
    </head>
    <body>
    <table border=1>
    <tr style="border-style:out-set; border-width:5px">
    <td>data</td>
    <td>data</td>
    <td>data</td>
    </tr>
    <tr>
    <td style="border-style:out-set; border-width:5px">data</td>
    <td style="border-style:out-set; border-width:5px">data</td>
    <td style="border-style:out-set; border-width:5px">data</td>
    </tr>
    </body>
    </html>

    これで試してみましたが、tr 要素に対して border-style が適用されませんね。ソースを確認すると、DataGrid もこのように出力していますから、DataGrid.HeaderStyle.BorderStyle がダミーなのではなく、IE が理解しない、が正解でしょう。ちなみに、Opera, FireFox も希望した出力にはなりませんでした。
     この下のような出力で良いなら、ItemDataBound イベントでヘッダ行のセルかどうかを判断し、セルに対して埋め込んでください。

     あ、table 要素の border 属性が0だと表示されません。1以上を設定してください。立体にしようと思ったら out-set か、in-set を指定することになりますが、これ、幅が3は必要です。その辺注意。
    # あれ?3だっけ?in-set, out-set なら2だっけ?
記事No.839 のレス /0過去ログ1より / 関連記事表示
削除チェック/

■832  Re[4]: ガッさんありがとうございます
□投稿者/ ガッ -(2005/07/10(Sun) 18:05:34)

    分類:[C#] 

    > ガッさんありがとうございます。キャストいろいろ試みましたができませんでした。
    > 私のやり方間違っているのでしょうが
    何を試したのか分からないので、一概に「間違っている」とは思ってはいけませんw;

    > 関数rs_cの2番目の引数として型はstringです。
    ( ・ω・)モニュ?…"rs_c"って何?

    > キャスト前はコントロールです。
    えーと、つまり "Control→String"のキャストをしようとしたわけですか…?
    多分Controlには明示的なStringへのキャストが定義されていないので、無理だったと思います。
    …原因はコレでしょうか?

    > 型をListBoxにするとSelectedItemは使えますが
    「何の」型をListBoxにしようとしましたか?
    Control→ListBoxなら、新参老兵さんの説明に二つのオーバーロードがある気がします(…ぇ

    > ActiveControlでは取得できなくなりました。
    this.ActiveControlでは「何を」取得できなくなったのでしょう…
    [ContainerControl].ActiveControlは、[ContainerControl]のアクティブな[Control]を返すプロパティのようです。
    なので、適切な(例えば、ListBoxのような)型にキャストすれば「取得」出来るはずですが…(?

    -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
    ここからが、実際にやりたい事の説明ですね…段分けしてくれたら嬉しかったです。
    > やりたい事は単純なのですが
    > 1個のコンボボックスと8個のリストボックスを作ってどのリストボックスのアイテムを
    > ダブルクリックしても自前の関数に引数として渡してコンボボックスのアイテムコレクションを変えたいのです
    ここまでが、「やりたいこと」で、

    -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
    ここからが、「知りたいこと」ということですね。
    > が、8個のイベントにリストボックス名を変えたものを作れば
    > いいのでしょうが、それでは芸が無さ過ぎるのでActiveControlを使おうとしたのですが
    > できませんでした。
    > 手法としては定番のような気がするのですがご教授下されば幸いです。
    何をしたのか分かりませんが…
    新参老兵さんは、
    1 どの[ListBox]をダブルクリックしたときでも、
    2 その[ListBox]に関連した何かを、
    3 自前の関数の引数として渡したい。
    のですよね?

    ということは、1&2をクリアするために大前提として、
    「[ListBox]をダブルクリックした」というイベントを集中して受け取る部分が必要になると思います。
    そのような部分は出来ていますか?

    →例えばこんなの
    //[Form]の初期化時の、[ListBox]が作られた後にこれを追加。
    foreach(System.Windows.Forms.Control ctl in this.Controls)
    if(ctl is ListBox)
    ((ListBox)ctl).DoubleClick+=new System.EventHandler(this.ListBoxDoubleClick);

    //[Form]のメンバとしてListBoxDoubleClickを宣言する。
    public void ListBoxDoubleClick(object sender,System.EventArgs e){
    /* ここに、thisにある全てのリストボックスで起こる
    * ダブルクリックのイベントが来る…ハズ。
    */
    this.Text=((ListBox)sender).Name;
    }

    ※熱があるので、大分暴走してるかもしれません(TT
記事No.828 のレス /0過去ログ1より / 関連記事表示
削除チェック/

■831  ガッさんありがとうございます
□投稿者/ 新参老兵 -(2005/07/10(Sun) 11:00:01)

    分類:[C#] 

    ガッさんありがとうございます。キャストいろいろ試みましたができませんでした。
    私のやり方間違っているのでしょうが関数rs_cの2番目の引数として型はstringです。
    キャスト前はコントロールです。型をListBoxにするとSelectedItemは使えますが
    ActiveControlでは取得できなくなりました。やりたい事は単純なのですが
    1個のコンボボックスと8個のリストボックスを作ってどのリストボックスのアイテムを
    ダブルクリックしても自前の関数に引数として渡してコンボボックスのアイテムコレクションを変えたいのですが、8個のイベントにリストボックス名を変えたものを作れば
    いいのでしょうが、それでは芸が無さ過ぎるのでActiveControlを使おうとしたのですが
    できませんでした。手法としては定番のような気がするのですがご教授下されば幸いです。
    private void listBox2_DoubleClick(object sender, System.EventArgs e)
    {
    string cs_c;
         cs_c = this.listBox2.SelectedItem.ToString();
    comboBox1.Items.Clear();
    r_sc(m_sc,cs_c,4);
    string[] st_c=new string[m_ken.Count];
    for(int i=0;i<m_ken.Count;++i)
    {
       st_c[i]=m_ken[i].ToString();
    }
    comboBox1.Items.AddRange(st_c);
    comboBox1.Focus();
    }

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

■828  SelectedItemについて
□投稿者/ 新参老兵 -(2005/07/09(Sat) 23:38:15)

    分類:[C#] 


    分類:[C#] 

    はじめまして初心者です。VS.NET2003win2ksp4です。ActiveContorolで取得したコントロールを.SelectedItemで使おうとすると"System.Windows.Forms.ContorolにSelectedItemの定義がありません。"のエラーがでます。何処が悪いのでしょうか。
    よろしくご指導お願いします。
    Control c_c;
    c_c = this.ActiveControl;
    comboBox1.Items.Clear();
    r_sc(m_sc,c_c.SelectedItem.ToString(),4);
    string[] st_c=new string[m_ken.Count];
    for(int i=0;i<m_ken.Count;++i)
    {
     st_c[i]=m_ken[i].ToString();
    }
    comboBox1.Items.AddRange(st_c);
    comboBox1.Focus();
親記事 /0過去ログ1より / 関連記事表示
削除チェック/

■807  「ファイルのタイムスタンプを設定する」について
□投稿者/ WinArrow -(2005/07/06(Wed) 20:17:20)
>

    分類:[VB6以前] 


    分類:[VB6以前] 

    こんにちは。WinArrowです。

    「ファイルのタイムスタンプを設定する」のコード(VB6)を、Win98,Win2000&ExcelVBAの環境で実行しました。

    その中で、「アクセス日時」について、
    Win2000では、指定とおりに設定できましたが、
    Win98では、結果として設定できませんでした。
    というのは、Win98では、SetFileTime を実行すると、アクセス日時が変更されてしまうからです。(SetFileTimeの実行前後のアクセス日時を取得して判明しました)

    この仕様は、OSによるもので仕方がないんでしょうか?

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

■714  親フォームのGroupBoxにある目的のボタンにフォーカスを移すには?
□投稿者/ .net勉強中 -(2005/06/24(Fri) 10:42:50)

    分類:[VB.NET] 


    分類:[VB.NET] 

    各項目ボタンはどの画面にも必要なので、親フォームを作成し、実際には親フォームを継承しようと考えております。

    実際にはEnterキーでフォーカスを移動していき、最後の入力が終わると実行ボタンに飛ばすようにしたいのですが、ButtonにはSetFocusが効かないので、困っています。SelectNextControl(Me.ActiveControl, True, True, True, True)
    を使うと異なるボタン(おそらく親フォーム側のTabIndexが先頭のもの)にフォーカスが移ってしまいます(TabIndexを派生フォーム側で変更してもうまくいきません)

    このようなケースで目的のボタンにフォーカスを移すのにはどのようにしたらよいのでしょうか?
    ちなみに親フォームの各ボタンはGroupBoxに入れてしまっているのも問題なのでしょうか?

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

■722  Re[5]: MSDNサンプルソースの解読
□投稿者/ 魔界の仮面弁士 -(2005/06/24(Fri) 13:46:54)

    分類:[C#] 

    > ・FindFirstUrlCacheGroup の使い方がわからない
    殆どの引数は、空指定で呼び出すことになります。
    実際に意味を持ってくるのは、第5引数だけでしょう。

    第1引数: [in] DWORD : ゼロ固定
    第2引数: [in] DWORD : 以下のいずれかのフラグ。
    CACHEGROUP_SEARCH_ALL …… 全てのキャッシュグループ
    CACHEGROUP_SEARCH_BYURL …… (現時点では実装されていません)
    第3引数: [in] LPVOID : NULL固定
    第4引数: [in] DWORD : ゼロ固定
    第5引数: [out] GROUPID* : キャッシュグループのID(を示すポインタ)
    第6引数: [in, out] : LPVOID : NULL固定
    戻り値: 成功時はハンドル、失敗時は NULL。


    > (MSDNで検索しても関数の仕様がでてこない)
    MSDNライブラリは、どのバージョンをお使いでしょうか。
    手元の April 2005版で調べてみたとろ、「FindFirstUrlCacheGroup」の
    仕様も、しっかりと載っていましたよ。

    オンライン版は、こちら。
    http://msdn.microsoft.com/library/en-us/wininet/wininet/findfirsturlcachegroup.asp

    ついでに、このようなサンプルも発見。
    http://www.geocities.jp/eco21426/TipsNET/Miscellaneous.htm

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

■720  Re[4]: MSDNサンプルソースの解読
□投稿者/ いば -(2005/06/24(Fri) 12:04:05)

    分類:[C#] 

    問題は解決したのですが、エンジニアとしてこれ位は意味がわかるようにと思い、サンプルソース解読中です。
    以下はサンプルソースのMain関数の最初の部分の抜粋です。
    これだけ見ても既に以下の複数の不明点があります。

    ・FindFirstUrlCacheGroup の使い方がわからない(MSDNで検索しても関数の仕様がでてこない)
    ・コメント(和訳した部分)の意味が不明(言ってることはわかります)

    関数の仕様の調べ方さえわかればそれでも自分のペースで地道に調べられるのですが・・。
    もし調べ方をご存知でしたら、恐れ入りますが教えて頂けますでしょうか?

    // Indicates that all of the cache groups in the user's system should be enumerated
    const int CACHEGROUP_SEARCH_ALL = 0x0;
    // Indicates that all the cache entries that are associated with the cache group
    // should be deleted, unless the entry belongs to another cache group.
    const int CACHEGROUP_FLAG_FLUSHURL_ONDELETE = 0x2;
    // File not found.
    const int ERROR_FILE_NOT_FOUND = 0x2;
    // No more items have been found.
    const int ERROR_NO_MORE_ITEMS = 259;
    // Pointer to a GROUPID variable
    long groupId = 0;

    // Local variables
    int cacheEntryInfoBufferSizeInitial = 0;
    int cacheEntryInfoBufferSize = 0;
    IntPtr cacheEntryInfoBuffer = IntPtr.Zero;
    INTERNET_CACHE_ENTRY_INFOA internetCacheEntry;
    IntPtr enumHandle = IntPtr.Zero;
    bool returnValue = false;

    // -----元の英文-----
    // Delete the groups first.
    // Groups may not always exist on the system.
    // For more information, visit the following Microsoft Web site:
    // http://msdn.microsoft.com/library/?url=/workshop/networking/wininet/overview/cache.asp
    // By default, a URL does not belong to any group.
    // Therefore, that cache may become empty even when the CacheGroup APIs are not used because the existing URL does not belong to any group.
    // -----自分なりの和訳-----
    // 最初に今までに訪問したURLキャッシュのグループを削除する(システムが持っているのか?)
    // グループは常にシステム上に存在するわけではない。これ以上の情報が欲しければリンク先を参照のこと
    // デフォルトでは、URLはどのグループにも属さない。
    // 従って、URLキャッシュはCacheGroup API群が使われていないときであっても空になるかもしれない。
    // なぜなら既存のURLはどのグループにも属していないからだ。(だからどうしろと?)

    enumHandle = FindFirstUrlCacheGroup(0, CACHEGROUP_SEARCH_ALL, IntPtr.Zero, 0, ref groupId, IntPtr.Zero);

    // If there are no items in the Cache, you are finished.
    if (enumHandle != IntPtr.Zero && ERROR_NO_MORE_ITEMS == Marshal.GetLastWin32Error()) return;

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

■695  Re[6]: TemporaryInternetFilesを削除したい
□投稿者/ いば -(2005/06/23(Thu) 14:30:33)

    分類:[C#] 

    魔界の仮面弁士さん、たびたびご回答頂きまして本当に有難うございます。

    ファイルの一覧は取得できました。
    お答えを頂く前に自分もそのように考え実装してみたのですが、しょうもないbugを埋め込んでしまい挙動がおかしかったもので質問してしまいました。

    ■正しいソース
    private void delete_files( string path )
    {
      string[] dirs = System.IO.Directory.GetDirectories(path, "*");
      foreach ( string dir in dirs )
      {
        string[] files = System.IO.Directory.GetFiles(dirs, "*");
        foreach(string file in files )
        {
          Console.WriteLine(file);
        }
      }
    }

    ■誤ったソース
    private void delete_files( string path )
    {
      string[] dirs = System.IO.Directory.GetDirectories(path, "*");
      foreach ( string dir in dirs )
      {
        string[] files = System.IO.Directory.GetFiles(dirs, "*");
        foreach(string file in files )
        {
          Console.WriteLine(files);
        }
      }
    }

    このように間違えると
    System.string[]
    System.string[]
    System.string[]



    と表示されてしまうので、あせって使い方が違うのかと思い込んでしまっていました。

    失礼しました。
    何も考えずに実行し、今もまだファイル一覧をコンソールに吐き出し中ですので、後でそれらを削除するよう試してみて結果をご報告します。

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

■690  Re[2]: TemporaryInternetFilesを削除したい
□投稿者/ いば -(2005/06/23(Thu) 13:33:18)

    分類:[C#] 

    コメントありがとうございます。

    //-------------------------------------------------------------
    string user = "hoge";
    string sys_dir = "C:\\Documents and Settings\\";

    // ----- Delete Temporary Internet Files. -----
    string path = sys_dir + user + "\\Local Settings\\Temporary Internet Files\\Content.IE5";
    delete_files(path);

    }
    private void delete_files( string path )
    {
      string[] files = System.IO.Directory.GetFiles(path, "*.*");
      foreach ( string file in files )
      {
        Console.WriteLine("file = [" + file + "]");
    //   System.IO.File.Delete(file);
      }
    }
    //-------------------------------------------------------------

    以上のように、ご指摘のフォルダに対して全ファイルの取得を実行したところ、以下のような出力結果になってしまい、ファイルの一覧は取得できませんでした。

    ■出力結果
    file = [C:\Documents and Settings\hoge\Local Settings\Temporary Internet Files\Content.IE5\desktop.ini]
    file = [C:\Documents and Settings\hoge\Local Settings\Temporary Internet Files\Content.IE5\index.dat]

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

■669  TemporaryInternetFilesを削除したい
□投稿者/ いば -(2005/06/22(Wed) 10:35:37)

    分類:[C#] 


    分類:[C#] 

    【環境】

    WindowsXP home edtion
    Microsoft Visual C# .NET 69504-335-0000007-18085
    Crystal Reports for Visual Studio .NET AAP5G-JS00000-U7000B4

    【問題】Temporary Internet Files 以下のファイルを削除できない

    以下のコードを組んでいますが、ファイルの一覧取得ができません(files.Length=0になる)。

    string user = "hoge";
    string path = "C:\\Documents and Settings\\" + user + "\\Local Settings\\Temporary Internet Files";

    string[] files = System.IO.Directory.GetFiles(path, "*.*");
    Console.WriteLine(path); // --- debug

    foreach( string file in files )
    {
      Console.WriteLine(file); // --- debug
      System.IO.File.Delete(file);
    }

    そのフォルダはセキュリティ的に触れないようになっているのはわかりますので、それでもなんとか削除したい場合の対応をご教授いただければと思います。
    COMの仕組みでIEの「インターネット一時ファイルの削除」機能が呼び出せれば良いのですが、google検索しても良い解決法が見つかりません(あまりこんなことやりたがらないようですね^^;)

    もし良い方法をご存知でしたら教えて下さい。
    よろしくお願いします。

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

■655  Re[1]: ASP(VBScript)のServerオブジェクト
□投稿者/ 超初心者 -(2005/06/21(Tue) 11:18:26)

    分類:[ASP.NET] 

    【追記】
    ソース部がなくなってました(^^;)
      :
      :
    mp = Server.MapPath("/test.txt")  ・・・@
    Set fs = CreateObject("Scripting.FileSystemObject")]
    Set fh = Fs.OpenTextFile(mp,1)
    Do Until fh.AtEndOfLine
    data = fh.ReadLine
    Response.Write(data & "
    ")
    Loop
    fh.CLose
      :
      :

    ----------------------------------------------------
    実行結果
    @でエラーが起こります。

    Microsoft VBScript 実行時エラー (0x800A01A8)
    オブジェクトがありません。: 'Server'

    なお、"test.txt"ファイルは、IISで仮想ディレクトリ設定したディレクトリの直下に
    保存したテキストファイルです。


    重ね重ねになりますが、よろしくお願いします。
    m(__)m

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

<前の20件 | 次の20件>

<< 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 >>

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

パスワード/

- Child Tree -