- 締切済み
ソフトウェアからオープンされているファイルの確認
たとえば、メモ帳でもいいのですが、【test.txt】がオープンされているとします。プログラムから【test.txt】が現在オープンされているか確認をしたのですが、そのようなAPIはありますか? MSDNで_lopenで確認するサンプルはありましたが、16bit版なので使えません。 CreateFileの引数等でわかるものなのでしょうか?
- みんなの回答 (7)
- 専門家の回答
みんなの回答
- macchun
- ベストアンサー率50% (3/6)
- macchun
- ベストアンサー率50% (3/6)
- macchun
- ベストアンサー率50% (3/6)
- oldroot2005
- ベストアンサー率66% (68/103)
- xcrOSgS2wY
- ベストアンサー率50% (1006/1985)
- xcrOSgS2wY
- ベストアンサー率50% (1006/1985)
- xcrOSgS2wY
- ベストアンサー率50% (1006/1985)
関連するQ&A
- ファイルオープンの挙動
windows環境にてperlの勉強をしております。 http://www.rfs.co.jp/sitebuilder/perl/05/03.html#open を参考にopenを使っておりました。 ファイル書き込みがうまくできていないようなので 以下のようなテストプログラムを作成したのですが 上記のサイトのような挙動をしませんでした。 --source--- #!/usr/local/bin/perl print "Content-type: text/html\n\n"; open(FILE, "+> sample.txt"); $data = <FILE>; print "data = $data<br>"; $flag = print FILE "TEST MESSAGE"; print "flag=$flag<br>"; close(FILE); --source-- --sample.txt-- 実験です --sample.txt-- windows環境だと data = flag= と表示され linux環境(レンタルサーバ)だと data = flag=1 と表示されます。 私の予想では data = 実験です flag = 1 と表示されると思ったのですが何が原因でしょうか。 またlinuxとwindowsで結果が違うのは何か原因があり、 また修正可能でしょうか。 openに+>の挙動例が書いていないサイトもあることが 若干気になります。 もし+>自体が不安定なのでしたら安定して使えるもの をおしえてください。所望の挙動は読み取り+上書き書き込みです。 環境 windows2000 "an http daemon" linux (infoseekフリースペース) apache
- ベストアンサー
- Perl
- テキストファイルの読み込み
http://www.ajaxtower.jp/ini/html/index1.htmlにあるサンプルで xmlHttp.open("GET", "http://www.ajaxtower.jp/sample/readfile.txt", true); の、ファイルの場所を変えたいのですが、とりあえず、同じフォルダ内のテキストファイルtest.txtにアクセスしようと、"./test.txt"に変えて、クリックしても何も表示されませんでした。 apacheを起動してhtdocsにtest.txtを入れて"files://localhost/test.txt"に入れてもダメでした。 xmlHttp.openが読めるtextファイルは、どういう状態である必要があるのでしょうか?
- 締切済み
- JavaScript
- VBでオープンしたファイルの制御をCのプログラムに渡す方法
VBでファイルのオープンをしてそのファイルの制御を Cのプログラムに渡す方法ってありますか? やりたいことを具体的にいうと ファイルのオープン、クローズはVBでやって、 ループの中の変数の値を、Cのプログラムに渡して Cのプログラムの中で印字するって処理をやりたいのです。 Cのプログラムをコールする際の引数で VBで開いたファイルハンドル、出力したい変数の値を 渡してやれば良いのかなと思ったのですが、うまくいかないようです。 なにか方法があれば教えてください。 宜しくお願い致します。 Dim i as Integer Open "\test.txt" For Output As #1 for i=0 to 10 call Cのプログラム(#1、i) next i close #1
- ベストアンサー
- Visual Basic
- ファイルオープンの関数について教えてください。
住所録保守のプログラムの宿題なんですが、ファイルオープンを関数にせずには動かせるのですが、関数にするとエラーが山のようにでます。参考書もよんでるのですがよくわかりません。明日提出なのでよろしくお願いします。 関数にする前の考えたプログラムは、 struct aaa{ char b char c }; FILE *fp; struct aaa[100]; if((fp=fopen("c:/a.txt","rt"))==NULL) exit(0);です。 宿題は f_open(char *name,char *mode) を使って指定されたファイルを指定されたモードで開くという関数を作りなさい。 引数 ポインタ nameはファイル名/mode はオープンモード 戻り値なし という問題です。 よろしくお願いいたします。
- ベストアンサー
- C・C++・C#
- ファイルがオープンできない
現在コマンドライン引数を利用した、Drag&Dropで入力されたバイナリファイルをテキストファイルに出力するプログラムをCで作成しています。 その過程で、Drag&Dropされたファイル以外にもテキストファイル(option.txt)を読み込みたいのですが、どうしてもそのファイルをオープンすることができません。 次は問題の部分だけを抜き出したソースです。 #include <stdio.h> int main(int argc,char *argv[]) { FILE *s; s=fopen("option.txt","r"); if( !s ){ printf("Error: cannot open file(option.txt)\n"); } else printf("OK!\n"); if(argc == 2) printf("%s\n",argv[1]); else if(argc ==1) printf("No Drag&Drop File\n"); return 0; } Drag&Dropしない時(作成された実行ファイルをダブルクリックで起動する時)は OK! No Drag&Drop File となり、問題のoption.txtのファイルは開けているのですが、適当なバイナリファイル(7.chn)をDrag&Dropすると Error: cannot open file(option.txt) C:\Documents and Settings\[ユーザー名]\デスクトップ\Program\7.chn と、先ほどまで開けていたoption.txtのテキストファイルが急に開けなくなってしまいました。 どうにも原因・解決策が分かりませんでしたので、お聞きしたくこちらに書き込みをさせてもらいました。 どなたか分かる方いらっしゃいましたらよろしくお願いします。
- ベストアンサー
- C・C++・C#
- いやーマイクロソフトには苦労します
メモ帳で空のファイルx.txtを作り これをGetAttributeでディレクトリかどうかを検査すると x.txtはディレクトリとみなされてしまいます 今x.txtがディレクトリだと動作が異常になる プログラムを作っていたので困っています そこでx.txtを排除するためにサイズを検査して0ならば 処理をしないようにしようと思ったのですが サイズを調べるのに void DispFileSize() { HANDLE hFile; DWORD FileSizeLow, FileSizeHigh; hFile = CreateFile( "\\command.com", 0, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); FileSizeLow = GetFileSize(hFile, &FileSizeHigh); printf("ファイルサイズ: %ud*2^32 + %ud\n", FileSizeHigh, FileSizeLow); CloseHandle(hFile); } などいいう馬鹿らしい処理をしなければなりません しかもこれはディレクトリに適用するものではないのでうまくいくかどうか・・・ ファイルサイズを出すのに簡単にする方法はないのでしょうか? しかしAPIはやたら引数が多いしわけのわからない定数をいっぱい使いますね 泣きたくなります 開発者に問題があるのでしょうね
- ベストアンサー
- C・C++・C#
- 実行時のlibxxx.soのオープンエラーについて
こんにちは。 soralis上でテストを試みてますが、リンク先を呼び出した時にオープンエラーがでてるみたいです。エラーの解消方法はどうすればよろしいですか? 業務プログラムをテストドライバから引数を渡し、出力ファイルを吐かせるという流れをやりたいのですが、テストドライバを実行すると業務プログラムのオープンエラーですというメッセージがでます。 テストドライバから業務プログラムを呼び出している個所をコメントにするとエラーがでません。 原因がわからないので教えてください。よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- ファイルダウンロードについて
jspに<a href="ファイル名">ダウンロード</a> でそのファイルをダウンロードできると思ってましたが ダウンロードすることができません。 下記の様にアドレスを指定して試行錯誤している状態です。。 <a href="./test.txt">1</a> <a href="sample.csv">2</a> <a href="C:\test.txt">3</a> <a href="C:\\test.txt">4</a> <a href="C:\sample.csv">5</a> <a href="C:\\sample.csv">6</a> <a href="./sample.csv">7</a> <a href="C:/test.txt">8</a> <a href="C://test.txt">9</a> <a href="C:\Program Files\Tomcat 6.0\webapps\servlet\pages\sample.csv">10</a> <a href="C:\Program Files\Tomcat 6.0\webapps\servlet\pages\sample.txt">11</a> <a href="C:\\Program Files\Tomcat 6.0\webapps\servlet\pages\sample.csv">12</a> <a href="C:\\Program Files\\Tomcat 6.0\\webapps\\servlet\\pages\\sample.csv">13</a> ちなみにOSはwindows XPです。 どなたかファイルのダウンロードについてご存じの方はご教授ください。
- ベストアンサー
- Java
- 【Ruby】テキスト置換を1ファイル完結にしたい
memo.txtの中に含まれている"俺の飯"という文字列を"私のごはん"というふうに置換を行いたいのですが、 現在のやり方だとファイルを開いて1行ずつ読み込んで新しいファイルに文字列を書きだしており 読み込んだ際、置換対象の文字列があった場合に置換して書きだしておりますが このやり方だとどうしても新規ファイルを出力しなければいけません。 これを新規ファイルを作らずにmemo.txtの中身だけを書き換えるようにするには どのような処理にすれば良いのでしょうか? 何卒宜しくお願い致します。 ---- sample.rb require 'rubygems' open("memo.txt"){ |f| open("after_memo.txt","w"){ |o| while line = f.gets line.gsub!("俺の飯", "私のごはん") o.puts line end } } -- memo.txt 俺の飯はリーズナブル! 俺の飯美味しそう!
- ベストアンサー
- Ruby
- PHPでのファイルオープンの仕方について
いつもこちらで勉強させていただいております。 初歩的な質問になるかもしれませんが、ご教授いただけたら幸いです。 windows7にて、VMware playerという仮想PCを作成するソフトを使い、Ubuntu(Linax)上でPHPの学習を行っております。 聞きたいこととしては、以下のプログラムを実行すると、 OPENエラー test.txt と表示されるのはなぜなのか、ということです。 <html> <head> <title> ファイルにデータを書き込む </title> </head> <body> <?php $file_name = "test.txt"; $file = fopen($file_name, "a") or die("OPENエラー $file_name"); flock($file, LOCK_EX); $string = "文字列を書き込む"; fputs($file, $string); flock($file, LOCK_UN); fclose($file); ?> </body> </html> 参考書に載っていたプログラムそのまま書いたつもりですが、何がダメなのかが解りません。 設定ファイルか何かに特別なことをしなければいけないのでしょうか? 初歩的な質問になるかもしれませんが、聞ける人がいなく困っております。どなたかご存知の方がいらっしゃったら、教えて下さい。 以上、よろしくお願いします。
- ベストアンサー
- PHP
- HP Cloud Recovery ツールのダウンロードの後、USBに落とす際に「シリアル番号が無効です」と出てきてしまいます。
- シリアル番号は合っていますがこれ以上進めません。
- NEC 121ware :パソコン本体についての質問です。
お礼
回答ありがとうございます。参考にします。 LAN環境(Windowsのワークグループ環境)内でサーバの共有フォルダにあるファイル の新規・変更・削除・更新をリアルタイムに取得できないか?考えていました。 まず、サーバ管理者がサーバ上にあるファイルを操作した場合の情報取得をどうすれば? これはmacchunさんから回答していただいたAPIを参考にテストしてみます。 問題はクライアントからサーバ上の共有フォルダにあるファイルを新規・変更・削除・更新 を行った場合の情報をリアルタイムに取得できないかを今でも考えています。 Windowsネットワーク関係のAPIを使ってテストをしてみましたが、リアルタイムに情報を 取得できませんでした。NetSessionEnum、NetFileEnumなど(Net系のAPI)リアルタイム には使えないAPIでした。Winsock2で対応できるかなと?調べましたがダメでした。 できないはずはないのでこれからも調べてみます。 macchunさん、アドバイスありがとうございます。