• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:BFupのFilePathについて)

BFupのFilePathについて

このQ&Aのポイント
  • BFupのプロパティに値を格納する際に、FilePathがうまくいきません。
  • VB6.0を使用している場合、BFupのFilePathに値を格納する方法について教えてください。
  • BFupを利用してファイルのアップロードを行いたいが、FilePathの設定方法が分からない。

質問者が選んだベストアンサー

  • ベストアンサー
  • takkunnet
  • ベストアンサー率74% (32/43)
回答No.3

私も入れてみてわかったのですが、BFupというツールの無償版は「コントロール」のみの提供のようです。 そのため、cio238さんがやろうとしていることはできないのではないでしょうか。 それは、製品版の機能になると思います。 コントロールとしてFormに貼り付ければ普通に使用できました。 参照設定でやろうとしたらcio238さんと同じように「FilePath」が設定できませんでした。 これはおそらく、Proのユーザズガイドを見られたのではないでしょうか。 本来は「Exec」プロパティで「upload」を指定するようになってますが、参照設定では「Exec」プロパティ自体が存在しませんし、「version」すら使用できませんでした。 そういった理由より、BFupの無償版はコントロールとして使用するものだと思います。

cio238
質問者

お礼

回答ありがとうございます。 有償版でなけらばできないですかね。 試していただいて、ありがとうございます。 有償版か、別の方法でやるか検討します。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • takkunnet
  • ベストアンサー率74% (32/43)
回答No.2

#1です。 追加質問です。 1.「FilePathだけがうまくいきません」とのことですがそう思う根拠は何でしょうか? (先ほどの返信では「エラーが出ない」とのことなので「どこで発生しているかは不明」なのでは???) 2.UPLOADフォルダに書き込み権限はありますか? あと、IIS を使っているならそちら側の設定も必要だと思います。

cio238
質問者

補足

返信ありがとうございます。 「FilePath」がうまくいかない根拠ですが、VBのデバッグモードでウォッチウィンドウにFilePathを表示させると、文字列を代入しているのですが、何も変化ありません。 また、FilePathの型がVariant/Variant(0 to -1)となっています。+で、展開すると、[変数なし]となっています。 なので、FilePathがうまくいっていないと判断しています。 何か分かりましたら、よろしくお願いします。

全文を見る
すると、全ての回答が全文表示されます。
  • takkunnet
  • ベストアンサー率74% (32/43)
回答No.1

何点か質問させてください。 1.「c:\tmp」は存在していますか? 2.BFupのhpによると「RFC1867 をサポートしたスクリプト環境が必要」とのことですが、この点はクリアしてますか? 3.格納できないということは「BFup.FilePath = "c:\tmp"」の行でエラーが発生しているのいうことですか? 4.どのようなエラーメッセージが表示されますか?

cio238
質問者

補足

早速の返事ありがとうございます。 質問の返答をします。 1.フォルダは存在しています。   tmpフォルダの中には、1つファイルをおいています。 2.環境は整っています。 3.エラーは発生していません。    RC = BFup.Start   この戻り値が0になっています。 4.エラーメッセージは表示されません。 よろしくお願いします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • InternetExplorer.Applicat

    Sub test1() Dim objIE As Object Dim i As Long Dim MyRow As Long Dim Str As String Dim tmp As Variant Set objIE = CreateObject("InternetExplorer.Application") objIE.Navigate "http://oshiete.goo.ne.jp/" objIE.Visible = True Do While objIE.Busy = True DoEvents Loop Str = objIE.Document.Body.innerHTML 'ソースを抜き出す tmp = Split(Str, Chr(10)) '配列に格納する MyRow = 1 '初期値 For i = LBound(tmp) To UBound(tmp) Cells(MyRow, 1) = tmp(i) MyRow = MyRow + 1 Next i objIE.Quit Set objIE = Nothing End Sub ************************************************** Sub test2() Dim objIE As Object Dim Str As String Dim tmp As Variant Dim i As Long Dim MyRow As Long Set objIE = CreateObject("MSXML2.XMLHTTP") objIE.Open "GET", "http://oshiete.goo.ne.jp/", False objIE.Send Str = objIE.responseText 'ソースを抜き出す tmp = Split(Str, Chr(10)) '配列に格納する MyRow = 1 '初期値 For i = LBound(tmp) To UBound(tmp) Cells(MyRow, 1) = tmp(i) MyRow = MyRow + 1 Next i Set objIE = Nothing End Sub ************************************************** 上記の二つのコードは どちらもVBAでHTMLソースをエクセルに書き出すコードなのですが 結果が違います。 なぜなのでしょうか? 実際のソースを確認したら CreateObject("MSXML2.XMLHTTP") の方が正しかったです。 CreateObject("InternetExplorer.Application") は何が取得されてるのでしょうか?

  • Excelマクロ

    お世話になります。 Excelマクロについて、ざっくりとした質問なのですが、 以下のマクロを実行した時に、オブジェクトXXXには、 どのようなものを格納できるのでしょうか。 Dim XXX As Object Set XXX = CreateObject("Scripting.Dictionary") 「CreateObject」と「Scripting.Dictionary」の使い方を調べてはみたのですが、 それぞれの使い方が今ひとつ分かりません。 お力添えいただきたいと思います。 よろしくお願いいたします。 以上

  • myObjにタグを格納してループはできない?

    MSXML2.XMLHTTPの時は、 myObjにタグを格納してループはできないのでしょうか? Sub test() Dim objIE As Object Dim myObj As Object Set objIE = CreateObject("MSXML2.XMLHTTP") objIE.Open "GET", "http://○○.html", False objIE.send For Each myObj In objIE.Document.all.tags("p") Next Set objIE = Nothing End Sub 上記だと実行時エラー438になります。 Set objIE =CreateObject("InternetExplorer.Application") でループしないとダメでしょうか? Set objIE =CreateObject("InternetExplorer.Application") は時間がかかるので、できれば Set objIE =CreateObject("MSXML2.XMLHTTP") でやりたかったのですが、タグを格納できないのでしょうか?

  • VB6からExcelを操作する

    VB6.0からExcelの操作をしています。 そのなかで、Excelシートを印刷したいのですが、どのようにしたら良いのでしょうか。 また、ExcelVBAのFunctionやSubを実行するにはどのようにするのでしょうか。 VB6.0内でExcel操作は次のようにしています。 Dim ExcelApp As Object Dim EWorkbook As Object Dim ESheet As Object Set ExcelApp = CreateObject("Excel.Application") Set EWorkbook = ExcelApp.Workbooks.Open(ExcelBookFlNm) Set ESheet = EWorkbook.Sheets(M_SheetNm) Set ESheet = Nothing Set EWorkbook = Nothing ExcelApp.Quit Set ExcelApp = Nothing よろしくお願いします。

  • VBScriptでオートパイロットプログラムを作ったのですが

    環境は、VB 6.0 SP5 です。 以下のようにVBでプログラミングしたんですが(VBScript含む)、続けて違うIDでログインしようとすると、該当ページが前のIDでログインしたままになっていて、動作が不安定です。普通にIEを立ち上げるてログインした場合、2回目に立ち上げた状態は、ログイン前のまっさらなページが表示されますよね。 何が問題なのでしょう? ご教授願えないでしょうか。   Dim WshShell As Object   Dim objIe As Object   Set WshShell = CreateObject("WScript.Shell")   Set objIe = CreateObject ("InternetExplorer.Application")   objIe.Navigate("該当ページのURL")   objIe.Visible = True   WshShell.AppActivate (objIe)   ログイン処理・・・   同じ事を繰り返す・・・

  • VB6.0上でExcelオブジェクトを生成

    質問です。 VB6.0上でExcelオブジェクトの生成についてです。 その1 Dim xlApp As Excel.Application … Set xlApp = CreateObject("Excel.Application") と その2 Dim xlApp As Object … Set xlApp = CreateObject("Excel.Application") と、どちらが良いのでしょうか? 開発環境は Win XP SP2 VB 6.0 Excel 2003 実行環境は Win 98 SE VB 6.0(ランタイムのみ) Excel 2000 SR-1 です。 開発環境ではその1、その2ともOKなのですが、 実行環境ではその2のみがOKです。 参考書にはその1が書かれていますが、その2を使うことによって何か不具合や都合の悪いことが起こりうるのでしょうか? あるいは当方の見当違いで根本的に何かが間違っているのでしょうか? どんな些細なことでも結構ですので宜しくお願いします。

  • ie操作 フレームのURLがあってるか取得したい

    http://okwave.jp/qa/q8135136.html こちらのANo.2様のご意見を参考に、フレーム操作について調べているのですが、 サンプルを作ってみたのですが、うまくできません。 サンプルの内容としては、URLの中のフレームのオブジェクトを変数に格納し、 その格納したオブジェクトのURLをメッセージボックスに表示し、 欲しいURLかどうかを目視で確認したいのですが Dim objIE As InternetExplorer Sub Sample001() Dim myObj As Object Dim objFr As Object Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True objIE.navigate "http://masaboo.cside.com/new_html1/ht_sun/frame02.htm" Stop Set objFr = objIE.document.frames.Item(1) MsgBox objFr.document.frames.LocationURL Set objIE = Nothing End Sub MsgBox objFr.document.frames.LocationURL だと、実行時エラー438になります。 MsgBox objFr.document.LocationURLもMsgBox objFr.LocationURLもダメでした。 私は何か根本的に勘違いをしているような気がしますが、格納したフレームのURLを表示する方法があれば教えてください。 ご教授よろしくお願いします。

  • Dictionaryの使用に先立って・・・

    いつもお世話になっています。 CreateObject("Scripting.Dictionary")を使用して、 DBから取得したレコードを格納したいのですが、VBのようにコレクションのプロパティを使用することは出来ないのでしょうか? ------------------------------------------------- 例) レコード取得一覧: Filds("ID"),Filds("NAME") 処理を行いたい構想: Dim AAA 'コレクション Dim gRst 'レコードセットオブジェクト Set AAA = CreateObject("Scripting.Dictionary") Do Until gRst.EOF   AAA.ID = gRst.Filds("ID")   AAA.NAME = gRst.Filds("NAME")   '次のレコード  gRst.MoveNext Loop ------------------------------------------------ 大変お手数ですが、ご教授をお願いいたします。

  • データ上のサイズを取得したい

    実際のサイズではなくデータ上のサイズを取得するためにはどう変更したらいいですか。 Option Explicit 'シートの名前を変更する Private Sub workbook_open() Dim fso As Object Dim filePath As String Dim fileSize As Double ' ファイルパスを取得 filePath = ThisWorkbook.FullName ' ファイルシステムオブジェクトを作成 Set fso = CreateObject("Scripting.FileSystemObject") ' ファイルサイズを取得(単位はバイト) fileSize = fso.GetFile(filePath).Size ' ファイルサイズをKBに変換(切り上げ) fileSize = Application.WorksheetFunction.RoundUp(fileSize / 1024, 0) ' ワークシートの名前を変更 Dim NewSheetName As String NewSheetName = fileSize & "KB" Sheets(1).Name = NewSheetName End Sub

  • エクセルVBAでPDF/実行時エラー

    以下はネットで検索して見つけたPDFのプリント用VBAですがやってみるとSet acroApp = CreateObject("AcroExch.APP")のところで実行時エラー「インターフェイスがサポートされていません」になります。 Adibe Acrobat 10.0 Type Liblaryも参照設定しました。 Windows11でエクセルは2019です。Acrobat Readerも入っています。 どうすればいいのでしょう? https://ziomatrix18.blog.fc2.com/blog-entry-406.html Sub test01() Dim ret As Integer Dim filePath As String filePath = "C:\Temp\Test.pdf" Dim acroApp As CAcroApp Dim pdDoc As CAcroPDDoc Dim avDoc As CAcroAVDoc Set acroApp = CreateObject("AcroExch.APP") Set pdDoc = CreateObject("AcroExch.PDDoc") Set avDoc = CreateObject("AcroExch.AVDoc") ret = acroApp.Show ret = avDoc.Open(filePath, "") Set pdDoc = avDoc.GetPDDoc() Dim numPage As Long numPage = pdDoc.GetNumPages ret = avDoc.PrintPages(0, numPage - 1, 2, 0, 0) ret = avDoc.Close(False) acroApp.Exit Set avDoc = Nothing Set pdDoc = Nothing Set acroApp = Nothing End Sub