Re: ファイルの同期読み込みの問題? ( No.1 ) |
- 名前:管理人 日時:2018/06/30 23:15
すみません、『Windowsネットワークを介した他のPCで実行する』というのは具体的には以下のどちらでしょうか?
1.DXライブラリが使用されたプログラムの実行ファイルがネットワーク上の別のPCのフォルダに存在していて、
そのファイルをダブルクリックして実行する( ファイルが別PCの中にあるだけで、プログラムの実行自体は
自分が操作しているPCで行っている )
2.リモートデスクトップを使用してネットワーク上の別のPCを操作して、そのPC上で
DXライブラリが使用されたプログラムの実行ファイルを実行する( ネットワークを介して別のPCを
操作しているので、プログラムの実行自体もネットワーク上の別のPCで行われる( 自分はそのPCの
画面の映像をネットワークを介して見ているだけ ) )
|
Re: ファイルの同期読み込みの問題? ( No.2 ) |
- 名前:GASHI 日時:2018/07/01 03:16
お世話になっております。
1のケースも2のケースも両方試しておりますが、
その差は見受けられません。
以上です。よろしくお願いいたします。
|
Re: ファイルの同期読み込みの問題? ( No.3 ) |
- 名前:管理人 日時:2018/07/01 06:52
どちらのケースでも同様の現象が発生しますか・・・
私も手元でどちらのケース( 『他PC上に実行ファイルと画像ファイルだけ置いて自分のPCで実行』と、
『遠隔操作で"他PC"上でプログラムを実行』 )も試してみましたが、どちらも『LoadGraph に異常に時間がかかる』
ということはありませんでした
どちらでも発生するとなりますと、ネットワークを介さずに、直接その『他のPC』を操作して
実行しても LoadGraph に異常に時間がかかるという現象が発生しないでしょうか?
|
Re: ファイルの同期読み込みの問題? ( No.4 ) |
- 名前:GASHI 日時:2018/07/01 15:49
お世話になっております。
>どちらでも発生するとなりますと、ネットワークを介さずに、直接その『他のPC』を操作して
>実行しても LoadGraph に異常に時間がかかるという現象が発生しないでしょうか?
それは起こらないのです。「他のPC」のローカルにコピーすると問題は起きません。
…これは私の経験に基づく勝手な想像なのですが、
・既に正常終了しているのに、イベント等を取りこぼす、あるいは評価順を誤っているため
タイムアウト待ちに突入 →やたらに時間がかかる
・その「タイミングの問題」で発生するためにすぐに読み込みが完了するケースがある。
あまり混乱させてしまってもアレだなぁと思うので書くのに躊躇するのですが。
私は昔そういう問題に遭遇したことがあります。
ヒントになるかどうかわかりませんが。
ネットワークに異常がないと思われるので、(他のプログラムの一切は正常に動作しますし、
自前でfopen()で読み込んだりしても全く問題がないので。)
おそらくは意図しないタイムアウト待ちが発生しているのかな…と。
本当に想像の域を超えないので申し訳ありませんが…。
以上です。よろしくお願いいたします。
|
Re: ファイルの同期読み込みの問題? ( No.5 ) |
- 名前:GASHI 日時:2018/07/01 17:21
追記です。
fopen等はうまくいくので。
もしかして内部で使っているかもしれない、
FileRead_open なども同様の現象が起こるのではないかと思い試してみました。
ビンゴらしいです。
FileRead_open でつっかえて、なかなか戻ってきません。
LoadGraphと同様にすぐに戻ってくる場合もあります。
「存在しないファイル」でも戻ってこないケースがあるのも同様。
FileRead_openから戻ってきたあとは、どうやら正常に動作するようで、FileRead_read では
一切引っかかることは無いようです。
|
Re: ファイルの同期読み込みの問題? ( No.6 ) |
- 名前:管理人 日時:2018/07/02 00:25
『他PC』で直接実行した場合は問題がないのですね・・・
手元で再度試してみましたが、やはり私の環境では現象が発生しませんでした
> ・既に正常終了しているのに、イベント等を取りこぼす、あるいは評価順を誤っているため
> タイムアウト待ちに突入 →やたらに時間がかかる
> ・その「タイミングの問題」で発生するためにすぐに読み込みが完了するケースがある。
イベントを使用した非同期処理などは行わず、普通に CreateFile を呼んでいるだけなので、
こちらには該当しないと思います
> FileRead_open でつっかえて、なかなか戻ってきません。
> LoadGraphと同様にすぐに戻ってくる場合もあります。
> 「存在しないファイル」でも戻ってこないケースがあるのも同様。
FileRead_open は内部で CreateFile を使用しています
LoadGraph を使用せずに CreateFile, ReadFile で読み込んだファイルを CreateGraphFromMem で
グラフィックハンドルにして画面に描画するサンプルプログラムを組んでみましたので、
よろしければこちらでも同様の現象が発生するかお試しいただけないでしょうか? m(_ _)m
( 画像はパッケージの『サンプルプログラム実行用フォルダ』の中にある Test1.bmp を使用しています )
#include "DxLib.h"
#include <stdio.h>
#include <malloc.h>
// CreateFile を使用した画像ファイルの読み込み
int LoadGraph_CreateFile( const TCHAR *FileName )
{
HANDLE FileHandle ;
DWORD FileSizeLow, FileSizeHigh ;
DWORD FileReadSize ;
void *FileImage ;
int GraphHandle ;
// ファイルを開く
FileHandle = CreateFile( FileName, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL ) ;
if( FileHandle == NULL )
{
return -1 ;
}
// ファイルサイズ取得
FileSizeLow = GetFileSize( FileHandle, &FileSizeHigh ) ;
// メモリ確保
FileImage = malloc( FileSizeLow ) ;
// ファイルの読み込み
ReadFile( FileHandle, FileImage, FileSizeLow, &FileReadSize, NULL ) ;
// ファイルを閉じる
CloseHandle( FileHandle ) ;
// グラフィックハンドルにする
GraphHandle = CreateGraphFromMem( FileImage, FileSizeLow ) ;
// メモリの開放
free( FileImage ) ;
// グラフィックハンドルを返す
return GraphHandle ;
}
// fopen を使用した画像ファイルの読み込み
int LoadGraph_fopen( const TCHAR *FileName )
{
FILE *FilePointer ;
int FileSize ;
void *FileImage ;
int GraphHandle ;
// ファイルを開く
FilePointer = fopen( FileName, "rb" ) ;
if( FilePointer == NULL )
{
return -1 ;
}
// ファイルサイズ取得
fseek( FilePointer, 0, SEEK_END ) ;
FileSize = ftell( FilePointer ) ;
fseek( FilePointer, 0, SEEK_SET ) ;
// メモリ確保
FileImage = malloc( FileSize ) ;
if( FileImage == NULL )
{
fclose( FilePointer ) ;
return -1 ;
}
// ファイルの読み込み
fread( FileImage, FileSize, 1, FilePointer ) ;
// ファイルを閉じる
fclose( FilePointer ) ;
// グラフィックハンドルにする
GraphHandle = CreateGraphFromMem( FileImage, FileSize ) ;
// メモリの開放
free( FileImage ) ;
// グラフィックハンドルを返す
return GraphHandle ;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
int GrHandle ;
// ウインドウモードで起動
ChangeWindowMode( TRUE ) ;
// DXライブラリの初期化
if( DxLib_Init() < 0 ) return -1 ;
// 画像の読み込み
#if 0
GrHandle = LoadGraph_fopen( "Test1.bmp" ) ;
#else
GrHandle = LoadGraph_CreateFile( "Test1.bmp" ) ;
#endif
// 描画先を裏画面にする
SetDrawScreen( DX_SCREEN_BACK ) ;
// メインループ(何かキーが押されたらループを抜ける)
while( ProcessMessage() == 0 )
{
// 画面のクリア
ClearDrawScreen() ;
// 画像の描画
DrawGraph( 0, 0, GrHandle, TRUE ) ;
// 裏画面の内容を表画面に反映
ScreenFlip() ;
}
// DXライブラリの後始末
DxLib_End() ;
// ソフトの終了
return 0 ;
}
|
Re: ファイルの同期読み込みの問題? ( No.7 ) |
- 名前:GASHI 日時:2018/07/02 05:22
お世話になっております。
サンプルプログラムありがとうございます。
山田様のお手を煩わせるのは気が引けるので、その辺は私も十分検証した上で
報告させていただいていますが、一応念のために動作させました。
結果ですが、もちろんこのプログラムでは問題は起きません。正常に動作します。
fopenもCreateFileも。fopenは結局の所CreateFileを呼び出すので、どちらも動いて
当然だと思います。
これが正常に動かないようであれば、もう、OS自体がおかしいと思います^^;
それで、相変わらずファイルを開こうとするだけで停止してしまう(事がある)わけですが、
検証するには、もう表示すらする必要もありません。プログラムを縮めます。
↓
//////////////////////////////////////////////////////////////////
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ){
int GrHandle;
ChangeWindowMode( TRUE );
if( DxLib_Init() < 0 ) return -1;
GrHandle = LoadGraph( "Test1.bmp" );
DxLib_End();
return 0;
}
//////////////////////////////////////////////////////////////////
↑
このプログラムは読み込んで終了するだけです。通常はすぐに終了します。
が、やはり問題は起こります。
で、気がかりなのが以下のプログラムです
↓
//////////////////////////////////////////////////////////////////
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ){
int GrHandle;
ChangeWindowMode( TRUE );
if( DxLib_Init() < 0 ) return -1;
int hFile = FileRead_open( "Test1.bmp", TRUE );
if( hFile ) FileRead_close( hFile );
DxLib_End();
return 0;
}
//////////////////////////////////////////////////////////////////
↑
まさに開いて閉じるだけです。これもまた同様の問題が起こります。
ファイルが存在してもしなくても、です。
そして、本来なら起こりえない事だと思いますが、問題の起こるPC以外でも、
FileRead_openにTRUEを渡すと、何回かに一度、メモリリークが起こります。
2444:Alloc memory dump
2453: size: 3328( 3.250kb) user size: 3208( 3.133kb) time:39594 file:y\Main\DxFile.cpp line:6648 ID:53 addr:09d926a0 data:[00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00]
2463: Total size:3208(3.133kb) Alloc num:1
ほぼ出ないのですが、たまに出ます。まさにタイミングの問題だと思います。
問題が起きたり起きなかったり、という現象はこれと関連があると見ています。
以上のことから、DxLib内での同期読み込み関連に、再現性が低くて見つけにくい
潜在的な問題があるものと思われます。
うまくすれば、この謎のメモリリークはとてもラッキーなヒントになるかも知れません。
以上です。よろしくお願いいたします。
|
Re: ファイルの同期読み込みの問題? ( No.8 ) |
- 名前:GASHI 日時:2018/07/02 17:05
追記です。
この手の問題はスレッドの扱いに問題があるのかな?と思いまして。
DxLibのソースコードを拝見しました。
非同期の場合はファイルアクセスに直接飛ぶようですが、キャッシュを使用する場合も
スレッドを立てて読み込みを行うらしいですね。
→フラグが間違っていたら無条件でスレッド使用。
無意味にスレッドが使用されていると仮定すると、気になる点がいくつかあります。
いえ、非同期読み込みを使用したい場合も同様なので、いずれの場合も気になります。
・当該スレッドが THREAD_PRIORITY_LOWEST になっていること。
・スレッドの中身で、場合によっては「100ミリ秒のタイムアウト待ちを挟んだループ」に
突入する可能性がある(?)
・クローズ処理でSleep(1);でループさせている部分がある。
このことから、
・単純なWaitForSingleObject()だけならLOWESTでも良いかも知れませんが、実処理が結構
あるのでこれは優先度が低すぎるかと。
・100ミリ秒待ちのケースは最悪で、これはもう遅くなって当然。しかもループ。
・Sleep(1)すると、優先度が低いがゆえにどうなるか・・・。
ソースは見ただけなのでなんとも言えないのですが、最悪のケースが発生した場合は
とんでもなく遅くなる可能性も見えてきます。
キャッシュに関してはドキュメント化されていないようなので、あくまで内部的な処理と
認識しております。
メモリリークに関してはちょっとわかりませんが、イベントの飛んでくる順番次第では
予期しない結果が起きてもおかしくない&「タイミングによって違う」の説明もつきます。
以上です。邪推ばかりで申し訳ありませんが。
|
Re: ファイルの同期読み込みの問題? ( No.9 ) |
- 名前:管理人 日時:2018/07/03 01:48
> 結果ですが、もちろんこのプログラムでは問題は起きません。正常に動作します。
こちらのプログラムでは正常に動作するとのことでしたら、
LoadGraph の代わりに LoadGraph_fopen を使用していただくことで
解決としていただくことも可能なのでしょうか?
> int hFile = FileRead_open( "Test1.bmp", TRUE );
すみません、FileRead_open の第二引数 ASync を TRUE にして非同期読み込みを行う機能は
SetUseASyncLoad( TRUE ); による非同期読み込み機能を整備する前に作成したもので、
SetUseASyncLoad( TRUE ); による非同期読み込み処理より拙い実装となっています
( ご指摘のように1ファイルにつき1スレッドを立てるような無駄の多い処理となっています )
機能としても SetUseASyncLoad に被っているので早々に無くした方が良かったのですが、
特に不具合のご報告も無かったのでなんとなく残していました
ただ、今回 GASHIさんが少し試されただけでもメモリリークなどの問題が発生してしまったようですし、
Windows版以外では実装もせず、メンテナンスの予定も無い状態だったので
次の正式バージョンまでには削除しようと思います m(_ _;m
ところで、FileRead_open の第二引数を TRUE にした場合は同様の問題が発生するとのことですが、
第二引数をデフォルトの FALSE にした場合は問題なく動作するということでしょうか?
> int hFile = FileRead_open( "Test1.bmp" );
|
Re: ファイルの同期読み込みの問題? ( No.10 ) |
- 名前:GASHI 日時:2018/07/03 14:13
お世話になっております。
>すみません、FileRead_open の第二引数 ASync を TRUE にして非同期読み込みを行う機能は
>SetUseASyncLoad( TRUE ); による非同期読み込み機能を整備する前に作成したもので、
あぁぁ…そうでしたか。別な処理だったんですね…。てっきり同じルーチンが呼ばれるものかと
思っておりました。
やはりソースコードを含めてビルドして追ってみるべでした…。すみません。
>ところで、FileRead_open の第二引数を TRUE にした場合は同様の問題が発生するとのことですが、
>第二引数をデフォルトの FALSE にした場合は問題なく動作するということでしょうか?
FALSEでもTRUEでも遅延問題は起こります。
かなり試しましたが、
FALSEにすると、少なくともメモリリークは起こらないようです。
TRUEは謎のメモリリークがたまに発生します。
>LoadGraph の代わりに LoadGraph_fopen を使用していただくことで
>解決としていただくことも可能なのでしょうか?
Android版との切り分けが必要になってしまうので…としつつもそれは簡単なので、
私は容易に妥協することも出来ます。
私はDXライブラリはとても良いものだと思っていまして。私は簡単なゲーム用のラッパーを作成
しているのですが(どんなライブラリを呼び出すかは自由なのですが)、やはり古いマシンでも
ソフトウェア描画出来るのは非常に強いと思っているので(歴史もありますし)、新しい環境でも
マルチプラットフォームでも、ほとんど環境差を意識しなくても良いのは素晴らしいと思います。
ということでDXライブラリを採択したいと考えております。(そして広めたい)
なので、せっかくソースコードも公開されているので、バグ出しやブラッシュアップに少しでも
貢献できたら良いなと考えておりました。DXライブラリを使用する他の皆様のためにもなると
思いますので。
ただ今回は私ちょっと失敗してしまいましたね^^; 見ているコードが違ったという…。
そうですね。すぐ治してくれというのも無理なお願いですし。せかしてエンバグなどが
起きたら目も当てられないので。
回避策もあるので、私はゆっくり待つということで、いったん解決にしましょう…か…?
それでは失礼いたします。
|
Re: ファイルの同期読み込みの問題? ( No.11 ) |
- 名前:管理人 日時:2018/07/05 00:26
> FALSEでもTRUEでも遅延問題は起こります。
> かなり試しましたが、
> FALSEにすると、少なくともメモリリークは起こらないようです。
> TRUEは謎のメモリリークがたまに発生します。
メモリリークを除いた現象自体は FALSE でも発生するのですね・・・
> Android版との切り分けが必要になってしまうので…としつつもそれは簡単なので、
> 私は容易に妥協することも出来ます。
> 私はDXライブラリはとても良いものだと思っていまして。私は簡単なゲーム用のラッパーを作成
> しているのですが(どんなライブラリを呼び出すかは自由なのですが)、やはり古いマシンでも
> ソフトウェア描画出来るのは非常に強いと思っているので(歴史もありますし)、新しい環境でも
> マルチプラットフォームでも、ほとんど環境差を意識しなくても良いのは素晴らしいと思います。
> ということでDXライブラリを採択したいと考えております。(そして広めたい)
ありがとうございます
マルチプラットフォームに関しては私も思いのほかそのままのコードでコンパイルできるようにできて驚いています
> なので、せっかくソースコードも公開されているので、バグ出しやブラッシュアップに少しでも
> 貢献できたら良いなと考えておりました。DXライブラリを使用する他の皆様のためにもなると
> 思いますので。
もしご協力いただけるということでしたら、よろしければこちらの『DXライブラリのソースごと
コンパイルして実行する』プロジェクトで LoadGraph するだけのプログラムを実行してみていただけないでしょうか? m(_ _)m
https://dxlib.xsrv.jp/temp/DxLibSourceTest.zip
FileRead_open も第二引数が FALSE の場合は中で CreateFile を普通に使用しているだけなので、
現状で FileRead_open では現象が発生して、直接使用すると現象が発生しないとなりますと、
後はコンパイルされる状況の違いくらいしか考えられなくなります
上記のプロジェクトではコンパイル済みの DxLib.lib を使用するのではなくDXライブラリのソースを
直接コンパイルするので、もしかしたらこの場合は『他PC上にあるファイルを LoadGraph や FileRead_open で
読み込もうとすると異様に時間が掛かる現象』が発生しないかもしれません
|
Re: ファイルの同期読み込みの問題? ( No.12 ) |
- 名前:GASHI 日時:2018/07/06 10:41
お世話になっております。
ソース版をビルドしてみました。結果は予想通り同じです。
ですが、解決策は見つかりました。よくお読み下さい。
時間をかけてLoadGraph以下をデバッガで追ってみました。
結局何が問題なのかよくわからなかったので、
最終的に呼び出されるCreateFileの部分=
DxFileWin.cpp の「スレッドを使用しない場合はこの場でファイルを開く」という
コメントのある箇所を以下のようにして試してみました。
LogFileFmtAddW( ( L"Call CreateFileW Path=\"%s\"" ),Path );
FileAccess->PF.Handle = CreateFileW( Path, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL ) ;
LogFileFmtAddW( ( L"Returned CreateFileW Handle=%x" ), FileAccess->PF.Handle );
これで以下のようなログが得られました。
----------------------------------------------
2642:DXライブラリの初期化処理終了
2652:EnterLoadGraph 入ります
2662:Call CreateFileW Path="D:.DXA"
2672:Returned CreateFileW Handle=ffffffff
2682:Call CreateFileW Path="D:\SOURCE.DXA"
2692:Returned CreateFileW Handle=ffffffff
2702:Call CreateFileW Path="D:\SOURCE\REPOS.DXA"
2712:Returned CreateFileW Handle=ffffffff
2722:Call CreateFileW Path="D:\SOURCE\REPOS\DXLIBSOURCETEST.DXA"
2732:Returned CreateFileW Handle=ffffffff
2742:Call CreateFileW Path="D:\SOURCE\REPOS\DXLIBSOURCETEST\DEBUG.DXA"
2751:Returned CreateFileW Handle=ffffffff
2761:Call CreateFileW Path="Test1.bmp"
2771:Returned CreateFileW Handle=4528
2782:Call CreateFileW Path="D:.DXA"
2792:Returned CreateFileW Handle=ffffffff
2804:Call CreateFileW Path="D:\SOURCE.DXA"
2814:Returned CreateFileW Handle=ffffffff
2824:Call CreateFileW Path="D:\SOURCE\REPOS.DXA"
2835:Returned CreateFileW Handle=ffffffff
2846:Call CreateFileW Path="D:\SOURCE\REPOS\DXLIBSOURCETEST.DXA"
2861:Returned CreateFileW Handle=ffffffff
2873:Call CreateFileW Path="D:\SOURCE\REPOS\DXLIBSOURCETEST\DEBUG.DXA"
2888:Returned CreateFileW Handle=ffffffff
2902:Call CreateFileW Path="Test1_a.bmp"
2915:Returned CreateFileW Handle=ffffffff
2930:QuitLoadGraph 0
----------------------------------------------
DXA関連で、とりあえずDXAとして開いてみる…というような処理があり、このような
試行が行われます。
結局ヒットしないので、最終的に"Test1.bmp"で、ファイルが読み込まれます。
「_a」がくっつけられてもう一度試行されるのでこうなります。
ログをよく見ると、この試行はどうやっても絶対にヒットしません(^^;
仮に".dxa"だとしてもヒットしません。試行自体が実は無意味です。
で、なぜ遅くなるのかということなのですが。
問題のPCは「【UNC形式で】「存在しないもの」を指定すると、探すのに時間がかかる」
というものでした。
上のログで置き換えると、"\\マシン名.DXA"から試行していきますので… これは
遅くなるのは必然。
同じ「存在しないもの」でも、例えば「ファイル名が違う」や「相対パス指定で存在
しない」などのケースは遅くなるということがありません。
あくまでUNCで指定した場合にだけ起こる現象です。
ほとんどの環境でこの試行は普通に失敗して終わるだけですが、当該PCでは問題が
発覚したというわけです。
解決するには、この「どうやっても絶対失敗する試行」を削除する。
ただそれだけだと思います(^^;
"_a"が付いた場合も相対パスになるので、問題が発生することは無いと思います。
以上です。よろしくお願いいたします。
|
Re: ファイルの同期読み込みの問題? ( No.13 ) |
- 名前:管理人 日時:2018/07/08 23:23
ご情報ありがとうございます
すみません、デフォルトの動作ではDXAファイル内のファイルにアクセスしようとしているのかを
調べるために何回もファイルオープンを行っているのを失念していました・・・
この処理は DxLib_Init の呼出し後に SetUseDXArchiveFlag( FALSE ); を実行して DXAファイルを
使用しない設定にすることで回避することができますので、よろしければお試しください m(_ _;m
( DXAファイルは使用できなくなってしまいますが・・・ )
|
Re: ファイルの同期読み込みの問題? ( No.14 ) |
- 名前:GASHI 日時:2018/07/10 00:54
お世話になっております。
>( DXAファイルは使用できなくなってしまいますが・・・ )
それは最終的に困ってしまいますね…
単純に先頭から試行するのではく、末尾から探索するように修正していただけると
ファイルが存在しない限りは、問題は解決するように見えるのですが。
c:\1\2\Test.dxa があるとして、
現状:
c\.dxa → c:\1.dxa → c:\1\2.dxa → c:\1\2\Test.dxa
改善案:
Test.dxa → 2\Test.dxa → 1\2\Test.Dxa → c:\1\2\Test.dxa
いかがでしょうか。
よろしくお願いいたします。
|
Re: ファイルの同期読み込みの問題? ( No.15 ) |
- 名前:管理人 日時:2018/07/11 01:22
末尾から探索した場合、たとえば例に挙げていただいた c:\1\2\Test.dxa では
仮にカレントフォルダが d:\test\folder で、その中にも Test.dxa があった場合、
c:\1\2\Test.dxa にアクセスしたいのに、d:\test\folder\Test.dxa にアクセスしてしまうので
正常な動作となりません・・・
|
Re: ファイルの同期読み込みの問題? ( No.16 ) |
- 名前:GASHI 日時:2018/07/12 14:08
わかりました。
この件は一旦終了にします。
ありがとうざいました。
ところで(解決)にする方法が解らないのですが、
これは私が自分で設定することは出来ないのでしょうか…
|
Re: ファイルの同期読み込みの問題? ( No.17 ) |
- 名前:8127 日時:2018/07/16 16:28
>ところで(解決)にする方法が解らないのですが、
これは私が自分で設定することは出来ないのでしょうか…
投稿フォームの名前「8127」のところを単に「8127(解決)」で投稿するだけです。
|
Re: ファイルの同期読み込みの問題? ( No.18 ) |
- 名前:GASHI(解決) 日時:2018/07/16 19:07
まさかそんなアナログな方法だったとは(笑
ありがとうございます!これでモヤモヤがスッキリ!
|