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

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

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

全過去ログを検索

<< 0 >>
■6775  Re[5]: VBからUNLHAを使用してファイルの圧縮したい
□投稿者/ ぽぴ王子 -(2007/08/23(Thu) 18:03:09)
>
    No6764 (SAMOAN さん) に返信

    > UNLHAの説明には
    > 機能 解凍を行います。
    > としか書かれていないのでできないのかなあ、と思ったのですが。

    UNLHA.DLL ひいては UNLHA32.DLL もそうですが、元々別の方の作られ
    た LHA.DLL というものがあり、そこから派生したものです。
    元々解凍専用でしたが、圧縮機能も追加されました。
    「解凍を行います」しか書かれていないのはたぶんそのせいだと思います。

    統合アーカイバプロジェクトの UNLHA32.DLL のページから引用
    > LHA.DLL の機能的な不備(あくまでも本プロジェクトのAPI仕様と言う意
    > 味で、ですが^^)に業を煮やしたMicco氏が、独自に LHA.EXE(吉崎栄
    > 泰氏作成。DLL 化に快諾いただいた吉崎氏に感謝)のソースを元に開発
    > したものが、UNLHA.DLL(16bit版) です。
    > その名の通り、元々は解凍専用でしたが、当然の帰結として圧縮機能も
    > 付きました(^_^;)



    > メッセージにはエラー番号48が出力されました。
    > 48はDLL読み込み時のエラーと書いてありましたが
    > DLLが見つからないのでしょうか?
    > unlha.dllは C:\WINNT\system
    > の下にコピーしたのですが。

    エラーコード 48 が発生する理由はほかにもありそうです。
    例えば VB.NET では16ビットDLLが扱えないとか(真偽のほどはわかりません)。

    それとは関係ないですが。

    前述の Micco さんのページですが、引用部分の前に
    > ダウンロード・ページで公開されているソフトについては(以下略)
    という文章がありましたので、UNLHA32.DLL だけでなく UNLHA.DLL も同
    様のライセンスと考える必要があると思います。

    であれば、動かない UNLHA.DLL を使用するよりは UNLHA32.DLL を利用
    して、なおかつ Micco 氏に商用利用の許可を取るのがいいと思います。
記事No.6749 のレス /過去ログ17より / 関連記事表示
削除チェック/

■11046  Re[1]: スロットマシン
□投稿者/ επιστημη -(2007/12/05(Wed) 22:03:02)
>
    > スロットマシンを作ってみたいと思ってますが、C,C#、C++,java、HSPで作った場合
    > 一番短い時間で作ることができるのはどの言語でしょうか?

    # いちゃもんつくのは覚悟の上で
    何を作るにしても最も早くできるのは最も手慣れた言語。
記事No.11045 のレス /過去ログ24より / 関連記事表示
削除チェック/

■67394  Re[2]: VBのコンテナコントロール
□投稿者/ 寅 -(2013/07/30(Tue) 21:06:18)
    No67393 (Hongliang さん) に返信
    > そのものの機能を持ったコンテナコントロールは標準ライブラリにはありませんね。

    ご回答有難うございました。
    ドキュメントアウトラインと言う機能があるんですね。
    最初、タブにパネルを張ったらタブと連動してしまいましたが、位置を調整する事で目的に近い状態を作る事が出来ました。
    当然DOCKが使えないので、大きさの調整はプログラムロードの時に計算して合わせようと思います。
    有難うございました。
記事No.67391 のレス /過去ログ114より / 関連記事表示
削除チェック/

■85452  Re[1]: XAMLのCommandParameterについて
□投稿者/ Hongliang -(2017/10/21(Sat) 23:57:28)
    > エラーメッセージの内容から察するに、型を集約したクラスを作成することは一般的な考えではない、ということでしょうか。
    > 名前空間直下に記載するのは気が引けるのですが......
    むしろ、そこに記述するための名前空間です。
    .NET Frameworkの基本ライブラリを見渡しても、大体の列挙体は名前空間直下でしょう?
記事No.85451 のレス /過去ログ146より / 関連記事表示
削除チェック/

■85978  複数の配列をソートする方法
□投稿者/ こんなのお -(2017/12/06(Wed) 19:41:17)

    分類:[.NET 全般] 

                Dim DateMod(1000) As Date
    Dim filepath(1000) As String

    というような配列を宣言し、
    DateModの日時順で
    複数の配列をソートしたいのですが
    普通にやるなら以下のように一つずつ地道にする方法があります。

    配列が二つくらいなら良いですが
    これが10個とか20個になってくると
    コードが見づらいですし、
    後からの修正も大変ですので
    もっとスマートな書き方をしたいのですが何か良い方法はありますでしょうか?




    For i = 1 To 1000

    For j As Integer = 1000 To i Step -1

    If DateMod(i) > DateMod(j) Then

    Dim swap1 As Date = DateMod(i)
    DateMod(i) = DateMod(j)
    DateMod(j) = swap1

    Dim swap2 As String = filepath(i)
    filepath(i) = filepath(j)
    filepath(j) = swap2

    End If
    Next j
    Next i

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

■85983  Re[1]: 複数の配列をソートする方法
□投稿者/ なちゃ -(2017/12/06(Wed) 21:11:46)
    配列ふたつならArray.Sort(Array, Array)系のメソッドでキー配列を元に要素配列のソートとかできますが、もっと数が多い場合はこれではできませんね。
    各配列にいろんなデータが入ってる構造のようですが、出来ればデータ要素をまとめたクラスまたは構造体の、単一の配列という構造にする方が色々と扱いやすいです。

    もっともこれは、ソート後にデータを扱う際に個別の配列でないと困るといった前提があるならだめですが。
記事No.85978 のレス /過去ログ147より / 関連記事表示
削除チェック/

■85984  Re[1]: 複数の配列をソートする方法
□投稿者/ shu -(2017/12/06(Wed) 21:39:25)
    No85978 (こんなのお さん) に返信
    
    なちゃさんの言うようにデータをクラス化してひとまとめにして扱うのがよいと思いますが
    提示された内容をいかしておこなうなら以下のような方法もあります。
    
    a,bがデータです。他にあっても全然かまいません。
    sortidxsがbをソートとした結果の配列のインデックスの配列となります。(実際にはbはソートされません)
    sortidxsに設定されている順番にa,bから該当する要素を取り出せばそれはbをソートした順番に取り出せることになります。
    sortidxsを求めるときのOrder Byの部分を変更すればaでのソートをすることもその他の配列でソートすることもできます。
    
            Dim a = {5, 2, 1, 6, 21, 4}
            Dim b = {#2017/10/1#, #2017/10/2#, #2017/10/10#, #2017/10/5#, #2017/10/8#, #2017/10/3#}
    
            Dim sortidxs = (From idx In Enumerable.Range(0, a.Length)
                            Order By b(idx)).ToArray
    
            For idx = 0 To sortidxs.Length - 1
                Dim idx2 = sortidxs(idx)
                Console.WriteLine($"{a(idx2)} {b(idx2)}")
            Next
    
記事No.85978 のレス /過去ログ147より / 関連記事表示
削除チェック/

■85985  Re[2]: 複数の配列をソートする方法
□投稿者/ こんなのお -(2017/12/06(Wed) 21:51:56)
    ありがとうございます。

    クラスを使う場合、
    Dim swap1 As Date = DateMod(i)
    DateMod(i) = DateMod(j)
    DateMod(j) = swap1

    のようにスワップするにはどうしたら良いですか?
記事No.85978 のレス /過去ログ147より / 関連記事表示
削除チェック/

■85986  Re[3]: 複数の配列をソートする方法
□投稿者/ はるまきとかげ -(2017/12/06(Wed) 23:35:39)
    No85985 (こんなのお さん) に返信
    
    クラスを使うならLINQに丸投げしちゃいましょう
    
    Class Item
        Public Property DateMod As Date
        Public Property filepath As String
    End Class
    
    Sub Main()
        Dim Data = {
            New Item() With {.DateMod = New Date(2017, 12, 3), .filepath = "c:\a.txt"},
            New Item() With {.DateMod = New Date(2017, 12, 2), .filepath = "c:\b.txt"},
            New Item() With {.DateMod = New Date(2017, 12, 1), .filepath = "c:\c.txt"}
        }
    
        Dim dateSorted = Data.OrderBy(Function(item) item.DateMod)
    
        For Each item In dateSorted
            Console.WriteLine(item.filepath)
        Next
    
        Console.ReadKey()
    End Sub
    
記事No.85978 のレス /過去ログ147より / 関連記事表示
削除チェック/

■85990  Re[1]: 複数の配列をソートする方法
□投稿者/ 魔界の仮面弁士 -(2017/12/07(Thu) 14:00:38)
    No85978 (こんなのお さん) に返信
    > For i = 1 To 1000
    i = 0 のデータは、ソート対象外なのですね?

    > Dim DateMod(1000) As Date
    > Dim filepath(1000) As String
    他の方も書かれているように、個別の変数にするのではなく、
    クラスにまとめるべきかと思います。
    (クラスの配列から、個々の要素の一次元配列を作るのは簡単ですし)


    あえて元の配列を活かすのであれば、こんな書き方もあります。
    ※最初のコードにあわせ、DateMod(0) と filepath(0) はソート対象外としています。

    Dim sortedIndex() As Integer = (
     From o In DateMod.Select(Function(d, i) New With {d, i}).Skip(1)
     Order By o.d, o.i Select o.i).ToArray()


    これにより、ソートされたインデックス番号が sortedIndex に入るので、
     For Each idx As Integer In sortedIndexByDate
      Console.Write("{0}: #{1}#, ""{2}""", idx, DateMod(idx), filepath(idx))
     Next
    などのようにして取り出すことが出来ます。


    さらに上記を使って、インデックス番号順に並び替えた配列として
    受け取りたいなら、このように書けます。

    Dim SortedDateMod() As Date = New Integer() {0}.Concat(sortedIndex).Select(Function(i) DateMod(i)).ToArray()
    Dim Sortedfilepath() As String = New Integer() {0}.Concat(sortedIndex).Select(Function(i) filepath(i)).ToArray()
記事No.85978 のレス /過去ログ147より / 関連記事表示
削除チェック/

■87582  Access の最適化の方法
□投稿者/ KT -(2018/06/10(Sun) 11:31:39)

    分類:[.NET 全般] 

    Microsoft Jet and Replication Objects Libraryをインストールせずに最適化を行う方法はありませんか?
    ユーザーの端末にインストールする作業を省きたいです。
親記事 /過去ログ150より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -