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 >>
■17297  SQL SERVER接続タイムアウト
□投稿者/ トミー -(2008/04/21(Mon) 19:44:07)

    分類:[.NET 全般] 

    お世話になります。

    開発環境 VS.NET2005でSQL SERVER2000を使っています。

    SQL SERVERに接続するスクリプトを書いているんですが、SqlConnection.Open()時に
    タイムアウトになってしまいます。

    何か他に設定(dll等)いるのでしょうか?

    初歩的な事を聞いてすみませんが、力を貸してください。

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

■17312  Re[1]: SQL SERVER接続タイムアウト
□投稿者/ はつね -(2008/04/22(Tue) 00:56:48)
    No17297 (トミー さん) に返信
    > 開発環境 VS.NET2005でSQL SERVER2000を使っています。
    >
    > SQL SERVERに接続するスクリプトを書いているんですが、SqlConnection.Open()時に
    > タイムアウトになってしまいます。
    >
    > 何か他に設定(dll等)いるのでしょうか?

    この情報だけじゃ何も分からないです。

    疑問1:
    コードなら分かるけどSQL Serverに接続するスクリプトってなんですか?

    疑問2:
    Open時のConnectStringには(ID,Pass,サーバ名は架空でOK)何を設定していますか?

    疑問3:
    接続はTCP/IPですか。また、それはどのように確認しましたか?

    疑問4:
    接続に使っているプロトコルでSQL Serverが稼働しているPCに接続できますか?

    疑問5:
    SQL Serverは動いていますか?
記事No.17297 のレス /過去ログ34より / 関連記事表示
削除チェック/

■17328  Re[2]: SQL SERVER接続タイムアウト
□投稿者/ トミー -(2008/04/22(Tue) 11:02:49)
    No17312 (はつね さん) に返信
    > ■No17297 (トミー さん) に返信
    >>開発環境 VS.NET2005でSQL SERVER2000を使っています。
    >>
    >>SQL SERVERに接続するスクリプトを書いているんですが、SqlConnection.Open()時に
    >>タイムアウトになってしまいます。
    >>
    >>何か他に設定(dll等)いるのでしょうか?
    >
    > この情報だけじゃ何も分からないです。
    >
    > 疑問1:
    > コードなら分かるけどSQL Serverに接続するスクリプトってなんですか?
    >
    > 疑問2:
    > Open時のConnectStringには(ID,Pass,サーバ名は架空でOK)何を設定していますか?
    >
    > 疑問3:
    > 接続はTCP/IPですか。また、それはどのように確認しましたか?
    >
    > 疑問4:
    > 接続に使っているプロトコルでSQL Serverが稼働しているPCに接続できますか?
    >
    > 疑問5:
    > SQL Serverは動いていますか?
    >

    すいません。投稿するの初めてなので情報不足でした。

    疑問1:
    コードで合ってます。

    疑問2:
    EnterPrise Managerで接続が確認された、ID、パス、ユーザー名

    疑問3:
    わかりません。確認する術を知りません・・・・。

    疑問4:
    EnterPrise Managerで接続確認しました。

    疑問5:
    動いていると思います。

    以上、よろしくお願いします。
記事No.17297 のレス /過去ログ34より / 関連記事表示
削除チェック/

■17070  コンソールアプリケーションでメッセージボックスを出すには
□投稿者/ ミケ -(2008/04/16(Wed) 11:55:52)

    分類:[.NET 全般] 

    お世話になります。
    一度送信したと思ったのですが、反映されていなかったので、もし二重に投稿していたら大変すみません。
    表題の件について質問させて下さい。

    開発環境
    OS:2000 Pro
    VB.Net:2003
    Office Access:2003

    日中Office Accessでユーザーが作業している後ろで、コンソールファイルを動かします。
    コンソールファイルは atコマンドでスケジュール登録しております。

    コンソール部分の作業が終わると、終了メッセージボックスを上げたいのですが
    以下の方法で挫折し続けています。
    改良点や他の方法などのアドバイス、もしくは引導を渡して頂けると、大変ありがたいです。


    Module Module1
    Declare Auto Sub MessageBoxW Lib "user32.dll" ( _
    ByVal hWnd As Long, _
    <MarshalAs(UnmanagedType.LPWStr)> ByVal lpText As String, _
    <MarshalAs(UnmanagedType.LPWStr)> ByVal lpCaption As String, _
    ByVal uType As Integer)

    Public Declare Function FindWindowA Lib "user32" (ByVal cnm As String, ByVal cap As String) As Long

    Sub Main()
    '<API MessageBoxW>
    MessageBoxW(0, "終わりました", "タイトルです", 0) '----■方法1

    '<API FindWinow + MessageBoxW>
    Dim hWnd As Long
    hWnd = FindWindowA(vbNullString, "Microsoft Access")
    MessageBoxW(hWnd, "終わりました", "タイトルです", 0) '----■方法2

    '<Dos窓>
    Console.WriteLine("終了しました。閉じてください")'----■方法3

    '<WindowForm>
    Dim frm As frmMsg = New frmMsg
    frm.Show() '----■方法4
    frm.ShowDialog() '----■方法5
    frm = Nothing
    End Sub
    End Module

    ■1 API MessageBoxW
     結果:何も起こりませんでした。

    ■2 API FindWinow + MessageBoxW
     結果:デバッガが立ち上がり、エラーメッセージが表示されます

    「System.NullreferenceExceptionのハンドルされていない例外が ○○.exeで発生しました。
    追加情報:オブジェクト参照がオブジェクト インスタンスに設定されていません。」
    となります。hWndには17桁の数字が入っていました。

    すみません、APIに無知なのですが、MessageBoxWの 
    ByVal hWnd As Long(オーナーウィンドウのハンドルを指定します。0 (NULL) を指定した場合、
    メッセージボックスはオーナーウィンドウを持ちません)

    は、この場合、
    コンソールファイルはウィンドウを持たないので、そのままメッセージを出せないが、開いている画面(Access)
    のWindowの番号をFindWindowで指定すると、Accessからメッセージが上がったように見える、という理解は
    間違っておりますでしょうか。

    ■3 DOS窓
     結果:何も起こっていないように見えます。

    一瞬書き込まれているのかもしれませんが、ユーザー操作で窓を閉じる事ができる方法がありましたら
    どうぞご指導お願い致します。

    ■4 WindowFormを作成して、Show
     結果:何も起こりません。

    ■5 WindowFormを作成して、ShowDialog
    結果:デバッガが立ち上がり、エラーメッセージが表示されます。

    System.InvalidOperationException' のハンドルされていない例外がsystem.windows.forms.dllで発生しました。
    追加情報:アプリケーションが UserInteractive モードで実行されていないときに、モーダル ダイアログまたは
    フォームを表示することは有効な操作ではありません。サービス アプリケーションからの通知を表示するには、
    ServiceNotification または DefaultDesktopOnly スタイルを指定してください。

    どうぞよろしくお願い致します。
    長文失礼致しました。
親記事 /過去ログ35より / 関連記事表示
削除チェック/

■16990  ATコマンドでコンソールアプリケーションを動かしたい
□投稿者/ ミケ -(2008/04/14(Mon) 22:13:19)

    分類:[Windows 全般] 

    初めまして。もし板違いの質問でしたら、恐れ入りますが然るべき場所へご誘導お願い致します。

    使用環境:
    OS:Windows 2000 Pro
    VB.Net:2003
    Office Access:2003

    AccessからATコマンドでスケジュールを登録して
    VB.Netで作成したコンソールファイルを動かしたいのですが、
    ATコマンドの登録が上手くいかず、困っております。

    まずテストで手作業でコマンドプロンプトから登録を行っているのですが、
    C:\Documents and Settings\user> "C:\Documents" "and" "Settings\yukik\My" "Documents\ツール\bin\ツール.exe"
    は問題なく動きますが

    C:\Documents and Settings\user>at 22:02 /every:M "C:\Documents" "and" "Settings\yukik\My" "Documents\ツール\bin\ツール.exe"

    が時間になっても全く動いてくれません。(Mは本日の曜日で入れました)

    Enter実行後に 「新しいジョブ ID=17 で追加しました。」と出ます。
    また実行時間が過ぎた後 > at を押してみると
    一覧画面に状態空白で表示されます。


    exeファイルの中身は現在

    Module Module1
    Sub Main()
    Call Kill("C:\Documents and Settings\user\My Documents\ツール\test.txt")
    End Sub
    End Module

    となっております。
    test.txt は消えないまま存在しています。
    ブレークポイントを設定していても、引っかかってくれません。

    間違っている点をご指摘頂ければ幸いです。
    どうぞよろしくお願いいたします。
親記事 /過去ログ35より / 関連記事表示
削除チェック/

■17543  Re[1]: VB6からの移行について(Basファイルについて)
□投稿者/ はつね -(2008/04/26(Sat) 23:26:42)
    No17542 (ナカ さん) に返信
    > Classファイルにする意義があまりわからないので、意見をいただけると助かります。

    Sharedにすれば、Newしなくても使えますよ。
    NewするならIDisposableインターフェイスを使ってUsingステートメント使えるようにしたらどうでしょうか。
記事No.17542 のレス /過去ログ35より / 関連記事表示
削除チェック/

■16762  Re[11]: 個人製のマイナー言語を使ったみたいと思わないか諸君(長ぃ
□投稿者/ 鶏唐揚 -(2008/04/10(Thu) 12:29:43)
    やね氏の名前が出てふと思い出したYaneuraoGameScript2000
    マイナーではないですけどw

    #ここまで挙がってきた言語をよく調べると、案外マニアには有名だったりしますね(MODLITはマジで日本語ページなかったですが)
     あとほとんど海外産。国産マイナー言語は言うほど数が出てないのかしらん
記事No.16690 のレス /過去ログ35より / 関連記事表示
削除チェック/

■17611  Excelマクロにて小数部を求めたい
□投稿者/ 萩泉 -(2008/04/28(Mon) 11:19:52)

    分類:[VB6 以前] 

    使用OS:Windows2000
    開発環境・言語:MicrosoftExcel2000 , MicrosoftVisualBasic6.0

    こんにちは、お世話になります。

    エクセルの勤務表に、日勤時間や週勤時間等を自動記録するシステムを作成しています。
    現在は週の初めの営業日と、終わりの営業日の入力を求め、
    その週の勤務時間と標準勤務時間を記録する部分を作っております。

    そのうちの、標準勤務時間の部分が、
    小数部が切り捨てられるのか、本来の値とずれてしまいます。

    マクロなしでやると、標準勤務時間は以下の式を入力しています。
    =INT(0.319444444444444*営業日数*24/1)+MOD(0.319444444444444*営業日数*24,1)*60/100

    それをマクロでは以下のように記録してみました。
    ------------------------------------------------------
    Sub 週勤計算()

    Dim Startday As Integer '週始めの営業日を格納
    Dim Endday As Integer '週終わりの営業日を格納
    Dim Fixedstandard As Single '週の標準勤務時間を計算して格納

    '週初めの営業日の入力を求める。
    Startday = Application.InputBox("週の始まりの平日を入力してください。", "週勤務時間計算", , , , , , 1)
    '週終わりの営業日の入力を求める。
    Endday = Application.InputBox("週の終わりの平日を入力してください。", "週勤務時間計算", , , , , , 1)

    -中略(週の勤務時間を記録)-

    '記録部のセルを結合
    Range(Cells(Startday + 3, "M"), Cells(Endday + 3, "M")).MergeCells = True

    '週の標準勤務時間を算出してセルに入力
    Fixedstandard = (Int(0.319444444444444 * (Endday - Startday + 1) * 24 / 1)) + (0.319444444444444 * (Endday - Startday + 1) * 24 Mod 1) * 60 / 100
    Cells(Startday + 3, "M") = Fixedstandard

    End Sub
    ------------------------------------------------------

    MOD関数の動作が違うらしいということは理解できたのですが、
    小数部を切り捨てない関数、もしくは演算子が分からず、つまづいています。

    この質問を書くためにデバック作業をしながら確認をしていたら、
    int関数の動きも期待通りでない気がしてきました。
親記事 /過去ログ35より / 関連記事表示
削除チェック/

■17606  Re[16]: フォルダ内のファイル名を取得する方法
□投稿者/ 魔界の仮面弁士 -(2008/04/28(Mon) 10:19:18)
    No17571 (渋木宏明(ひどり) さん) に返信
    > CompareMethod のヘルプには
    >>Text システムの LocaleID 値によって決定された、大文字小文字を区別するテキスト並べ替え順に基づいて、テキスト比較を実行します。
    > とありますが、大文字小文字を同一視して比較するんですか>CompareMethod

    日本語ロケールにおいては、大文字小文字が同一視されます、Option Compare Text および CompareMethod.Text では。

    ですが、半角の『ア』と全角の『ア』と『あ』も同一視されますので、ファイル名比較に使うのは微妙です。
    さらに言うと、『○゜゜』と『●』が同一視されるという謎仕様…! (eXConn ユーザなら、7208 のスレッドを参照)



    No17517 (魔界の仮面弁士) に追記
    > Windows のファイル名では、ABC と abc は同一視されますが、
    > ABCとabcは別物として扱われる事になっていますし。

    NT系(WinXP など)だと、FAT か NTFS かに関わらず、両者が同一視されますね。

    一方、Win9X (あるいは、Windows 3.1 や MS-DOS 6.20 など)においては、
    "C:\ABC" と "C:\abc" が別物として扱われました。

    # A系 API と W系 API の仕様の違いによるものなのかな…。他言語環境だとどうなのだろう?


    9x 系 OS で、"C:\ABC" と "C:\abc" という全角 3 文字のディレクトリを作成し、
    そのドライブを Win2000 環境に繋いで参照すると、コマンドプロンプトやエクスプローラ等からは
    ABC と abc のそれぞれのディレクトリが表示されて見えるものの、OS からは
    両者が同一視されているため、一方のフォルダにしかアクセスできないという問題が…。
記事No.17488 のレス /過去ログ35より / 関連記事表示
削除チェック/

■17336  Re[2]: Tablet PC SDKについて
□投稿者/ とっちゃん -(2008/04/22(Tue) 12:29:04)
>
    .NET Framework 側のInk系オブジェクト(3.0以上)なのか、TabletPC の持つ、Ink COM オブジェクトなのかで変わりますね。
    2005 なので、どちらもあり得るので何とも言えない。

    前者であれば、.NET Framework 3.0(またはそれ以上)をインストールすればOKです。
    後者は、マージモジュールが提供されているので(ただし、1.7だけのはず)、それでインストールすればOKです。
    マージモジュール以外での配布用のファイルは用意されていないと思いますが
    きちんとSDKの配布情報読んでないのでわかりません。

    ちなみに、TabletPCの機能は XP-SP2以上です。2000(SP不問)は、9x系では使えません。
記事No.17329 のレス /過去ログ35より / 関連記事表示
削除チェック/

■17354  Re[5]: Tablet PC SDKについて
□投稿者/ よこやま -(2008/04/22(Tue) 21:45:47)
    返信ありがとうございます。

    対象OSは決定ではないのですが、2000、xp、ヴィスタです。
    これはもう、出来てからやってみないとわからないですね…。

    インストーラは作ってあるのですが、マージモジュールは初めて聞きました。ちょっと調べてみます。

    返信していただいた方ありがとうございます。


    ちなみに、
    解決マークはプログラムが出来て確認してからつけたいと思います。

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

■17378  Re[6]: Tablet PC SDKについて
□投稿者/ とっちゃん -(2008/04/23(Wed) 11:33:05)
>
    No17354 (よこやま さん) に返信
    > 対象OSは決定ではないのですが、2000、xp、ヴィスタです。
    > これはもう、出来てからやってみないとわからないですね…。
    >
    いくつかマージモジュール(WindowsSDK6.0付属のもの)を見てみたところ、
    Windows 2000 以上にインストールできるようになっていますね。
    SDKのドキュメントをきちんと読んでいないので本当に動くかわかりませんが、
    配布条件を見る限りでは、使えるっぽいです。
    でもドキュメントのそれらしいところをちょっと眺めた範囲では
    2000については言及がないので全くわからんですね。


    > インストーラは作ってあるのですが、マージモジュールは初めて聞きました。ちょっと調べてみます。
    >
    こちらは、WindowsSDK 6.0 以上なら
    C:\Program Files\Microsoft SDKs\Windows\v6.0\Redist\Tablet PC\v1.7
    というフォルダ(標準的なインストール先)にあります。

    VS2008だと、6.0Aのサブセットがついてきますが、こちらには含まれていません。
    SDKは別途入れているようですので、そのSDKのインストール先にある

    通常は C:\Program Files\Common Files\Merge Modules にコピーして使いますが
    インストーラによるので、現状どうすれば?というのは何とも言えません。
    もちろんコピーしておけばあとはよしなにとはならないと思うので
    この辺りはインストーラに何を利用しているか?がわからないと
    何とも言えませんが。

    あと、XPだとどうのこうのとかなんかいろいろ書かれていたので(全部英語)
    一度ドキュメントをきちんと読んで実行環境などは
    調査したほうがいいと思いますよ。

    開発終盤になって 2000 で動かしてみたらNGでしたじゃシャレにならんです。
記事No.17329 のレス /過去ログ35より / 関連記事表示
削除チェック/

■17720  Re[3]: IEMobileの履歴を消すプログラムについて
□投稿者/ 魔界の仮面弁士 -(2008/04/30(Wed) 18:59:40)
記事No.17702 のレス /過去ログ35より / 関連記事表示
削除チェック/

■17998  Re[2]: SqlServerのユーザについて
□投稿者/ はつね -(2008/05/07(Wed) 19:22:05)
>
    No17995 (Mr.T さん) に返信
    >>そこでSqlServer認証モードで、sa でログインし、以下のSQL文を発行しました。
    >
    > SQLを発行したデータベースがmasterとかになっている、とかじゃないんですか?

    テーブル参照のフルは、[DatabaseServer].[DatabaseName].[DatabaseSchema].[DatabaseObject]です。
    Mr.Tさんが書かれているmasterは[DatabaseName]ですので、今回の[DatabaseSchema]の指定とはちと違うような。
    # このあたり、SQL Server 2000とSQL Server 2005で違います。

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

■18026  Re[3]: SqlServerのユーザについて
□投稿者/ Mr.T -(2008/05/08(Thu) 08:18:48)
    > Mr.Tさんが書かれているmasterは[DatabaseName]ですので、今回の[DatabaseSchema]の指定とはちと違うような。
    > # このあたり、SQL Server 2000とSQL Server 2005で違います。
    うわ、その通りです。
    申し訳ないです>質問者の方
記事No.17994 のレス /過去ログ36より / 関連記事表示
削除チェック/

■18025  Re[9]: 問題で〜す
□投稿者/ y4yama -(2008/05/08(Thu) 07:40:02)
    (nori さんと同じかも)
    昔のお話に、ガリレオ?だったか、「地球を動かしてみせよう」条件は「巨大なテコと足場・支点が用意されれば」
    とか、ありましたねぇ〜
    それに比べれば、富士山を運ぶパワーショベル(かヘリコプター)なんて小さいかも
    ドラえもんのスモールライトのほうが夢があっていいですが
    って、普通過ぎる・・・(面白くないですねぇ〜)
記事No.17999 のレス /過去ログ36より / 関連記事表示
削除チェック/

■18810  マージモジュールについて質問
□投稿者/ よこやま -(2008/05/16(Fri) 14:30:37)

    分類:[C#] 

     こんにちはよろしくお願いします。

     以前、こちらでTablet PC SDK をインストールしていないPCで、Tablet PC SDKの機能を使うことができるかという質問をした者です。

     以前は、マージモジュールを使用することで使えるようになるということがわかり、試しているのですが、うまくいかないので再度質問させて下さい。

    環境
    winXP SP2
    vs2005
    Tablet PC SDK
    c#


     今参考にしている記事は
    http://www.microsoft.com/japan/windowsxp/tabletpc/techinfo/articles/binkchat.mspx
    http://msdn.microsoft.com/ja-jp/library/aw2dz878.aspx
    です。


     上の記事を参考にすると、マージモジュールを追加したセットアッププロジェクトを作成した場合、
    収集の部分的サポートとレンダリングの全面的サポートと書かれてます。下の方に詳しくありますが、inkを使って手書きをする機能の一部と表示ができるという意味だと解釈しています。

     
     そこで、簡単なプロジェクトを作成して見ました。

     初めに簡単なフォームにInkCollectorを使って描画できる用にしたプログラムを作成したのですが、
    これは、マージモジュールの有無に関係なくフォームに手書きができました。
     次に、簡単なフォームにInkPictureコントロールを張り付けただけのプロジェクトを作成したのですが、はマージモジュールの有無に関係なく手書きができなくなりました。

     ただし、すでに書かれている手書きのデータがあれば表示は可能なようで、今はInkCollectorを使って書いた手書きをInkPictureに渡して描画している状態です。

    しかしInkCollectorだと、消しゴムの機能がなかったりいろいろと不便なので、やはりInkPictureを使って作りたいのです。


    なので、結局何が聞きたいのかといいますと、マージモジュールを使ってTablet PC SDKのインストールされていないPCでもInkPictureを使うにはどうしたら良いのでしょうか?ということです。


     それと、記事を読んでいただければわかると思いますがマージモジュールのインストール可能OSが

    Windows XP Professional、
    Windows XP Professional Service Pack 1、
    Windows 2000 Professional Service Pack 2

    となっていますがWindows XP Professional Service Pack 2は対象外なのでしょうか??

    今のところ、出来る事が優先で行っておりますので、WinXP PS2で動かせるようにしたいです。よろしくお願いします。
親記事 /過去ログ36より / 関連記事表示
削除チェック/

■18811  Re[1]: マージモジュールについて質問
□投稿者/ やじゅ -(2008/05/16(Fri) 14:39:21)
    No18810 (よこやま さん) に返信
    >  それと、記事を読んでいただければわかると思いますがマージモジュールのインストール可能OSが
    >
    > Windows XP Professional、
    > Windows XP Professional Service Pack 1、
    > Windows 2000 Professional Service Pack 2
    >
    > となっていますがWindows XP Professional Service Pack 2は対象外なのでしょうか??
    >

    ここしか答えられませんが、該当記事の日本語版最終更新日 2003年10月23 日で
    Windows XP Service Pack 2が2004年9月2日に発表なので、対象外というわけではないです。
記事No.18810 のレス /過去ログ36より / 関連記事表示
削除チェック/

■18853  Re[3]: Windowsサービスのアンインストールで失敗
□投稿者/ とっちゃん -(2008/05/16(Fri) 18:22:21)
>
    No18850 (asuka さん) に返信
    >
    > ただ、アンインストール時にサービスを消したいので幸せになるためにMSDEを読み漁りつづけます。TT
    >
    MSDEは、SQL-Server 2000 時代の簡易DBの名前です。
    ま、文脈で通じますが、間違ってたままだといずれ検索で失敗とかなりますよw

    > とりあえずインストーラークラスを用いてUninstall()をオーバーライドしてみたのですが、
    >
    > InstallerClass()とInstall()クラスは呼ばれるものの、Uninstall()だけは何故か呼ばれませんでした。
    >
    Uninstall() のメソッドは登録されていますか?
    手動で設定しないとだめだった気がします。

    それと、ServiceInstaller クラスはInstaller クラスの派生クラスです(間にComponentInstallerクラスが挟まってますが)。
    なので、いろいろ機能拡張されているので、サービスの登録をする場合は必ずそっちを使うようにした方がいいです。
記事No.18815 のレス /過去ログ37より / 関連記事表示
削除チェック/

■18825  Re[4]: Winアプリ用ファイル分割・統合のプログラミングについて
□投稿者/ DRINK -(2008/05/16(Fri) 15:53:46)
    No18159 (魔界の仮面弁士 さん) に返信
    > DRINK さんの環境は、
    > >>> 分類:[VB.NET/VB2005]
    > なのですから、.NET 対応の書籍を入手する必要があるかと。
    ご忠告ありがとうございます。言われないと気付けない所でした。
    これ以外にソースコードのサンプルが手に入らなかったら、VB6からの変換を勉強した方がいいでしょうか?
    一応他のサンプルらしきものはあるんですが、どうもVB6のもののようなので無駄だとは思いますが載せておきます。
    Public Function CnvMltVol(infnm As String, outfnm As String, outsize As Long) As Boolean
    
      Dim i          As Long
      Dim fnm        As String
      Dim fno        As Long
      Dim fno1       As Long
      Dim filesize   As Long
      Dim writesize  As Long
      Dim l          As Long
      Dim seqno      As Long
    
    '** 異常終了セット
      CnvMltVol = False
    
    '** 分割サイズチェック
      If outsize < 32000 Then
        MsgBox "分割サイズが 32000 未満です。" + Chr(10) + "32000 以上を指定して下さい。", 48, "CnvMltVol()"
        Exit Function
      End If
    
    '** 入力ファイルオープン
      On Local Error Resume Next
      fno = FreeFile
      Open infnm For Input As fno Len = 32000
      If Err <> 0 Then
        MsgBox "入力ファイルのオープンに失敗しました。" + Chr(10) + " for input infnm = " + infnm, 48, "CnvMltVol()"
        Exit Function
      End If
      Close fno
      Err = 0
      fno = FreeFile
      Open infnm For Binary As fno Len = 32000
      If Err <> 0 Then
        MsgBox "入力ファイルのオープンに失敗しました。" + Chr(10) + "for binary infnm = " + infnm, 48, "CnvMltVol()"
        Exit Function
      End If
    
    '** 分割処理
      i = InStrRev(outfnm, ".")
      If i = 0 Then Exit Function
      fnm = Left(outfnm, i - 1)
      seqno = 1
      fno1 = OpenMltFile(fnm, seqno, False)
      If fno1 = False Then
        Close fno
        Exit Function
      End If
      filesize = LOF(fno)
      writesize = 0
      Do Until filesize < 1
        l = filesize
        If l > 32000 Then l = 32000
        ReDim rec(l - 1) As Byte
        Get fno, , rec
        If writesize + l > outsize Then
          Close fno1
          seqno = seqno + 1
          fno1 = OpenMltFile(fnm, seqno, False)
          If fno1 = False Then
            Close fno
            Exit Function
          End If
          writesize = 0
        End If
        Put fno1, , rec
        writesize = writesize + l
        filesize = filesize - l
      Loop
    
    '** ファイルクローズ
      Close fno1
      Close fno
      On Local Error GoTo 0
    
    '** 正常終了セット
      CnvMltVol = True
    
    End Function
    
    何かいいサンプルコードがあったり、良案があったりしたらおしえてください。
    
記事No.17862 のレス /過去ログ37より / 関連記事表示
削除チェック/

次の20件>

<< 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >>

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

パスワード/

- Child Tree -