したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

【エミュレータ】Emueraスレ【+1】

1Emueraの人:2018/10/08(月) 00:25:02 ID:BB/6hbPM
このスレはEmuera(エミューラ)に関する話題を扱うスレです。
Emuera本体に関する要望・バグ報告などありましたらこのスレでどうぞ。
各ERBスクリプトに関する話題はそのバリアントのスレでお願いします。

なおeramakerの作者である佐藤敏様はEmueraの製作には関与していません。
Emueraへのサポート要求等をサークル獏様や佐藤様宛てに送らないで下さい。

前スレ(era板)
https://jbbs.shitaraba.net/bbs/read.cgi/otaku/12839/1290444111/

OSDN(旧称:SourceForge.JP)のEmueraのプロジェクトページ
https://ja.osdn.net/projects/emuera/

妊)|д゚)の中の人による私家改造版はこちら
https://ux.getuploader.com/ninnohito/

このスレのほか、irc.friend-chat.jpの匿名チャンネル!Emueraにも顔を出してます。
メールまたはtwitterでの報告も受け付けております。

259あなたの名前を入力してください:2021/02/17(水) 21:03:29 ID:zsKf9xQ6
>>204
WebP対応のEmueraはeraTWで起動時にエラーが出たり出なかったりする現象が確認されてるけどライブラリ部分を少し修正してみたらエラー出なくなったような気がします
http://book-shelf-end.com/up/dwlink.cgi?eraRx2100.7z

260あなたの名前を入力してください:2021/02/18(木) 21:19:46 ID:nmOlxT6I
>>259
size_t の UIntPtr への割り当て漏れがまだ数か所あります
エンコ系は(まだ)使ってなさそうだからいいと思いますけど
(WebPDecodeBGRInto / WebPDecodeBGRAInto / WebPEncodeBGR / WebPEncodeBGRA / WebPEncodeLosslessBGR / WebPEncodeLosslessBGRA)

261あなたの名前を入力してください:2021/02/18(木) 22:24:23 ID:HDhFN9rM
>>260
64bit環境でsize_tをintで受け取っても、上位32bitが捨てられて次の1bitが符号扱いになるだけなのでほとんどの場所では実害無いのかなと思います
画像のファイルサイズやデータサイズ等が1個でギガバイト級になることは考えにくい
でもテスト版ならともかく正式版では修正したほうがいいですね
(自分が正式版を作るとは言ってない)

>>259で修正した場所はサイズではなくアドレスを返している、そして受け取って使用する場所では値がゼロか非ゼロかだけをチェックしていたのでアドレス上位32bitが非ゼロで下位32bitがゼロの場合に判定を間違えていたのだと思います

262260:2021/02/19(金) 02:24:58 ID:fM61t2NQ
>>261 259直して頂いたのありがたう

気にしているのは cdecl 呼び出し=スタック経由だから、次のパラメータが正しく渡せなくなる *かもしれない* 事が問題かなと
パディングで助かってて動いてるけど、運が悪いければ (メモリー境界にあたるとかコンテキストスイッチで) おちるかもって感じ

神経質な人は厳密に制御するために MarshalAsAttributes で逐一やってるみたい
あと、IOExeption やらでのリトライ処理の方で、更に落ちにくくなりますよ

263259:2021/02/20(土) 00:14:45 ID:3.AoG0bI
>>260 のあたりも全部ひっくるめて元のGitHubのリポジトリで適切なコードに修正してくれたらそれを持って来るだけでいいんだけどあんまり期待はできないかな……)
(自分でforkして修正するほどの気力は無いなぁ……)
(そもそも >>259 の問題に対して誰も直接ツッコミ入れてなかったように見えるのがちょっとアレなので、別のライブラリを探してみてもいいのかなぁ……)
(x86とx64のWindows限定だったらいいんだろうけど、厳密にはsize_tをUIntPtrに置き換えできると言い切れるものではない……? stackoverflow.com/questions/32906774/what-is-equal-to-the-c-size-t-in-c-sharp )

264あなたの名前を入力してください:2021/02/21(日) 10:37:36 ID:OxB2x.cg
巨大バリアントだとMOD管理がしんどいからキーバリューデータベースが欲しいかも

・KVPUT("KEY", "VALUE") ;値に空文字列なら内部でremove
・KVGET("KEY", "初期値") ;初期値は省略可能

これひとつで#DIMS SAVEDATA .KVD, 10000, 2 みたいなのを内部で保存してくれるイメージ
内部が.NETならDictionary使ってハッシュでキー検索できるしERHでMODごとに分けずに一元管理してもいけそう

265あなたの名前を入力してください:2021/02/22(月) 00:27:07 ID:Qlo5ysxs
汎用関数・ライブラリ総合スレに「文字列を使った連想配列もどき&可変長配列もどき」はあったね
当時のファイルそのものは現在ダウンロードできないけどtohoKに取り込まれてるのかな(使われてないはずだけど)

266あなたの名前を入力してください:2021/02/22(月) 02:31:54 ID:fkJWcDpk
eraTWのERB\ステータス表示関連\CN_GRAPHICに入ってるやつかな
_Dictionary.ERB/ERHと_List.ERB/ERH
CC0で再配布しても大丈夫なやつ
とはいえERBレベルでなくEmuera本体で実装してあればそっちのほうがスマートではある

267妊)|д゚):2021/02/23(火) 04:56:20 ID:QzucMbmY
○1824+v11
https://ux.getuploader.com/ninnohito/download/477

v10で取り込んだツールチップ関係の変更をtweak

268260:2021/03/01(月) 21:58:20 ID:FD1YjcrA
昔挫折した WebP関連バグの修正を発掘して、マージしてみました
>>267 の v11にリベースしました
>>259 に便乗して、さらにいくつかの Dll の呼び出しをより C 側に近づけますた
MarshalAs の駆使は読みにくいから止めた…UIntPtr も Core化したいならやめろって言われるけど…
・webpラッパー内の専用例外処理: 今まで全部まとめてExceptionだったので、Webp専用のExceptionクラスを作った
・リトライ : 今はハードコーディングで各ファイル3回。うーん
・バグ修正: 今まではファイルパスにwebpって入っていたらwebpファイル扱いされた!
・Creator.Method.cs の スプライト用のGCREATE(filename) っぽいとこに WebP.Load() を呼ぶように
ただしここは未テスト。スプライト関係のテストERBが書けないんだ…
・(過去の残骸) 本体のパス文字列参照を IO.Path.DirectorySeparatorChar / IO.Path.AltDirectorySeparatorChar から取るように書き換え
Worktreeに混じっちゃった…
MONOユーザ注意! (Config\Config.cs / Config\ConfigData.cs / ContentAppContents.cs / Program.cs / Sys.cs )

http://book-shelf-end.com/up/dwlink.cgi?eraRx2170.7z
※Windows Defenderではチェック済みですが、VirusTotal では引っかかっています※
※独自ビルドしたEmueraのほか、libwebp_x86.dll/libwebp_x64.dll を同梱してます
 ソース/速度上特に他で配布されているものと変わりないです (NMAKEでビルド、/favor:blend)

/// 今、eramaker/Emuera系を Github に上げたくはないっすね。master/slave の語を消すくらいBLMが怖いから…

269259:2021/03/03(水) 00:06:17 ID:o8xDnWpc
>>268
おお、乙です
GCREATEFROMFILEでWebPの画像も読めるようになったみたいですね
(個人的には、「自分が使うだけなら元ソースの複数箇所の new Bitmap(filepath) のあたりにそれぞれWebPかどうかで処理を振り分けるコードを追加するだけで済ませるけど、ソース公開するならImageWrapperとかいう名前の何かを用意して振り分けコードは1か所だけ記述するほうがいいのかな」ぐらいのことをなんとなく考えてました。でも何もやってません)

270あなたの名前を入力してください:2021/03/06(土) 20:38:09 ID:Qizk40rY
>>268
Program.cs 56行目に + が混入してて、DebugDirが変なことになってます

ChromeやWindowsセキュリティがうるさいから自分でビルドしてみようかとも思ったけど気が進まない
VSBuildTools入れればVisualStudio入れなくてもビルドできるんですかね?

271あなたの名前を入力してください:2021/03/06(土) 22:55:05 ID:b1rfKVhA
.Net Framework入ってれば
C:\Windows\Microsoft.NET\Framework64\v4.0.30319
以下にコンパイラ入ってるしできる、と思ったけど、これC# 5のコンパイラなので
現在のEmueraはC# 6で追加された構文使ってるからコンパイルできないな
大人しくVS持ってくるのが手っ取り早いかも

272260:2021/03/07(日) 01:43:04 ID:QJTritZs
>>270
おおうチョンボ… 修正しました。GCREATEFROMFILE のテストしてたら…
改良テスト版 v0.2.0
http://book-shelf-end.com/up/dwlink.cgi?eraRx2187.7z

>>269
TypeConverter / ImageTypeConverter ? インターフェースを実装したら、
何も考えなくても、System.Drawingで読み込めるようになるらしいけど茨の道
そんなことよりほんとの目的のSVG対応のほうが…

273260:2021/03/10(水) 18:07:07 ID:HSNkGH22
トロイ検出騒動で鯖全体にまで悪影響が及ぶようになったらしいので取り下げました
もうこりごり…

274あなたの名前を入力してください:2021/03/11(木) 00:11:53 ID:kOs6NiE.
雑談スレでは「同じユーザーとパスが不特定多数に使われてるからパスお漏らしするサイトとして扱われてる可能性がある」とか言われてますが、Emuera実行ファイルのせいでロダに悪影響というのもどこかで言われてるんでしょうか?
セキュリティ対策ソフトがEmuera実行ファイルに文句付けてくるのは過去にも発生事例がありますね
せっかくの修正内容が公開取り下げになってしまうのはもったいないので何とかできるものなら何とかしたい

275260:2021/03/11(木) 22:20:25 ID:ps.Vcuqg
アンチウイルスソフト業界はダウンロード鯖ランキングリスト持ってて、今回私のバイナリがトロイ入り(となった)ので鯖のスコアを大きく悪くしたってことです
>>274 の言うように、今回初めてではなくて元々スコア悪い鯖扱いになってた様なので、今般 Avastとかいくつかでは監視リスト入り濃厚っぽい
一手遅かったけどバイナリは自主的に消したので、しばらく落ち着くのを待ってれば鯖スコアも回復する…と思いたい

配布バイナリに耐ディスアセンブルや難読化等の改変対策してなかったのは私のミス
で、最初引っ掛かりまくった物の VirusTotal での指摘によると、悪い点は Emuera 単体起動したときに Emuera.config などを吐くこと (元々)、ほか
Emuera にある、許可なく *ファイルを書き出す機能* が減点対象みたいですが、
本体側にUACやアクセス権とか仕様にかかわる変更が必要になる様なので私は白旗

276260:2021/03/19(金) 17:19:09 ID:6DYB3.kQ
この前の書き込みから放置プレイするのもあれなので、ほとぼり冷めた?くらいに Update ver 0.5.0 上げます

Emuera1.824+v11+webP v0.5.0(Secure対策版)
ソースのアップが主目的、バイナリは暗号化 7z になってます
http://book-shelf-end.com/up/dwlink.cgi?eraRx2231.7z

・webp読み込み周り安定化した…はずです
・webpのGCREATEFROMFILE() 周り安定化しました…と思います
・起動時、ディレクトリ権限&CSV・ERBディレクトリ有無を確認し、特にオプションがなければ、(コンフィグファイルやポップアップを吐かず)即終了
・いくえふめい…になってたReadme類をDocs添付
・バイナリの難読化 & libwebp のパッチ:セキュリティ対策ですがおまけ処置

権限チェック回りが難しくて、多分特定のWindows環境固有の実装だろうと思われます。これ以上は詳しい人に任せます


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板