HDL-AH3.0W 追加
HDL-AH3.0W を追加.
LAN ケーブルを接続して,電源ケーブルを接続.電源 ON .
LAN 上で認識可能になるまでは,5 分位か?
NAS の設定画面に入るために IP アドレスが必要なため,Magical Finder で確認.
Magical Finder は,うまく認識しないこともあります.
IP アドレスが知りたいだけなので,ASUS ルータがあれば「ASUS Router」アプリでも可.
設定画面に入り,NarSuS への登録,LAN DISK の名称,メール設定.
ファームウェアのアップデートがあったので,これも実施.
std::setprecision
次の様なコードでビルドすると,
std::tout << … << std::setprecision(4) << x << _T(“\t”) << y << std::endl ;
——————–構成: GetX_5 – Win32 Debug——————–
コンパイル中…
GetX_5.cpp
c:\…\getx_5\getx_5.cpp(256) : error C2039: ‘setprecision’ : ‘std’ のメンバではありません。
c:\…\getx_5\getx_5.cpp(256) : error C2065: ‘setprecision’ : 定義されていない識別子です。
cl.exe の実行エラー
GetX_5.exe – エラー 2、警告 0
iomanip のインクルードが必要.
ループ部分の OpenMP 対応
効果は低かったが,OpenMP を利用したコードに書きなおしてみた.
//--- オリジナルのコード ---------------------------------------------------------------- Ld2A lins ; { for (size_t indexVV=0 ; indexVV<vv_plf.size() ; indexVV++) { v_PLF v_plf = vv_plf[indexVV] ; if (v_plf.size() == 0) { continue ; } for (size_t indexV=0 ; indexV<v_plf.size() ; indexV++) { PLF plf = v_plf[indexV] ; if (plf.Is_line()) { Vd4A v4a = plf ; Vd3A v3a = ::ToVd3A(v4a) ; Vd2A v2a = ::ToVd2A(v3a) ; for (size_t indexL=1 ; indexL<v2a.size() ; indexL++) { Vd2 s = v2a[indexL-1] ; Vd2 e = v2a[indexL-0] ; Ld2 lin(s,e) ; lins.push_back(lin) ; } } } } } //---- OpenMP 対応 ------------------------------------------------------------------------ Ld2A PLF_to_Ld2A (const v_PLF& v_plf) { Ld2A lins ; { for (size_t indexV=0 ; indexV<v_plf.size() ; indexV++) { PLF plf = v_plf[indexV] ; if (plf.Is_line()) { Vd4A v4a = plf ; Vd3A v3a = ::ToVd3A(v4a) ; Vd2A v2a = ::ToVd2A(v3a) ; for (size_t indexL=1 ; indexL<v2a.size() ; indexL++) { Vd2 s = v2a[indexL-1] ; Vd2 e = v2a[indexL-0] ; Ld2 lin(s,e) ; lins.push_back(lin) ; } } } } return lins ; } Ld2A PLF_to_Ld2A (const vv_PLF& vv_plf) { Ld2A lins ; { #ifdef _OPENMP #pragma omp parallel for #endif for (long indexVV=0 ; indexVV<long(vv_plf.size()) ; indexVV++) { v_PLF v_plf = vv_plf[indexVV] ; if (v_plf.size() == 0) { continue ; } Ld2A ln_a = ::PLF_to_Ld2A(v_plf) ; #ifdef _OPENMP #pragma omp critical (PLF_to_Ld2A) #endif { lins.insert(lins.end(),ln_a.begin(),ln_a.end()) ; } } } return lins ; }
C:\Users\Iwao>C:\Temp\Test\Fill\GetX_1\ReleaseS.140\GetX_1.exe 31.856 C:\Users\Iwao>C:\Temp\Test\Fill\GetX_1\Release.140\GetX_1.exe 20.202 C:\Users\Iwao>
v_Vd2A GetCross (const vv_PLF& vv_plf,const Vd2& pt) { Ld2A lins = ::PLF_to_Ld2A(vv_plf) ; v_Vd2A v_pnts ; { Vd2A pnts ; pnts.push_back(pt) ; v_pnts.push_back(pnts) ; } { Ld2 lh(pt,pt+Vd2(1,0)) ; Ld2 lv(pt,pt+Vd2(0,1)) ; Vd2A work_pnts ; #ifdef _OPENMP #pragma omp parallel for #endif for (long index=0 ; index<long(lins.size()) ; index++) { Vd2 s = lins[index].S ; Vd2 e = lins[index].E ; Ed2 ext(s,e) ; Vd2 x ; if (get_cross_line(s,e,lh.S,lh.E,&x)) { if (::Is_point_in_extent(x,ext)) { // pnts.push_back(x) ; } } if (get_cross_line(s,e,lv.S,lv.E,&x)) { if (::Is_point_in_extent(x,ext)) { // pnts.push_back(x) ; } } { Vd2 h = ::get_near_on_line(s,e,pt) ; if (::Is_point_in_extent(h,ext)) { #ifdef _OPENMP #pragma omp critical (GetCross) #endif { work_pnts.push_back(h) ; if (work_pnts.size() > 10) { v_pnts.push_back(work_pnts) ; work_pnts.clear() ; } } } } } v_pnts.push_back(work_pnts) ; } return v_pnts ; }
error D8016: ‘/ZI’ と ‘/Gy-‘ は同時に…
VC 6 プロジェクトを VC 14 に変換してビルドすると,
------ ビルド開始: プロジェクト:GetX_1, 構成:Release Win32 ------ C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(367,5): warning MSB8004: Intermediate Directory does not end with a trailing slash. This build instance will add the slash as it is required to allow proper evaluation of the Intermediate Directory. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(368,5): warning MSB8004: Output Directory does not end with a trailing slash. This build instance will add the slash as it is required to allow proper evaluation of the Output Directory. GetX_1.cpp GetX_1.vcxproj -> c:\Temp\Test\Fill\GetX_1\Release.140\GetX_1.exe GetX_1.vcxproj -> c:\Temp\Test\Fill\GetX_1\Release.140\GetX_1.pdb (Full PDB) ------ ビルド開始: プロジェクト:GetX_1, 構成:Debug Win32 ------ C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(367,5): warning MSB8004: Intermediate Directory does not end with a trailing slash. This build instance will add the slash as it is required to allow proper evaluation of the Intermediate Directory. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(368,5): warning MSB8004: Output Directory does not end with a trailing slash. This build instance will add the slash as it is required to allow proper evaluation of the Output Directory. cl : コマンド ライン error D8016: コマンド ライン オプション '/ZI' と '/Gy-' は同時に指定できません ========== ビルド: 1 正常終了、1 失敗、0 更新不要、0 スキップ ==========
/ZI と /Gy- は, デバッグ情報の形式 : エディット コンティニュのプログラム データベース (/ZI) 関数レベルでリンクする : いいえ (/Gy-)
RT-AC86U 追加 – 7
2018/05/10 08:23:49 | 27.92.169.109 | 156.232.254.26 | 404 | /phpMyAdmin/phpMyAdmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:49 | 27.92.169.109 | 156.232.254.26 | 404 | /phpmyadmin/phpmyadmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:46 | 27.92.169.109 | 156.232.254.26 | 404 | /typo3/phpmyadmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:45 | 27.92.169.109 | 156.232.254.26 | 404 | /claroline/phpMyAdmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:45 | 27.92.169.109 | 156.232.254.26 | 404 | /pma-old/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:42 | 27.92.169.109 | 156.232.254.26 | 404 | /phpmyadmin-old/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:42 | 27.92.169.109 | 156.232.254.26 | 404 | /tools/phpMyAdmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:39 | 27.92.169.109 | 156.232.254.26 | 404 | /phpMyadmin_bak/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:39 | 27.92.169.109 | 156.232.254.26 | 404 | /xampp/phpmyadmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:39 | 27.92.169.109 | 156.232.254.26 | 404 | /myadmin2/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:36 | 27.92.169.109 | 156.232.254.26 | 404 | /phpmyadmin2/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:35 | 27.92.169.109 | 156.232.254.26 | 404 | /phpmyadmin1/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:35 | 27.92.169.109 | 156.232.254.26 | 404 | /phpmyadmin0/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:32 | 27.92.169.109 | 156.232.254.26 | 404 | /mysql-admin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:32 | 27.92.169.109 | 156.232.254.26 | 404 | /mysqladmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:32 | 27.92.169.109 | 156.232.254.26 | 404 | /admin/phpmyadmin2/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:29 | 27.92.169.109 | 156.232.254.26 | 404 | /admin/phpmyadmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:29 | 27.92.169.109 | 156.232.254.26 | 404 | /admin/mysql2/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:29 | 27.92.169.109 | 156.232.254.26 | 404 | /admin/mysql/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:28 | 27.92.169.109 | 156.232.254.26 | 404 | /admin/PMA/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:25 | 27.92.169.109 | 156.232.254.26 | 404 | /web/phpMyAdmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:25 | 27.92.169.109 | 156.232.254.26 | 404 | /dbadmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:25 | 27.92.169.109 | 156.232.254.26 | 404 | /db/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:22 | 27.92.169.109 | 156.232.254.26 | 404 | /mysql/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:22 | 27.92.169.109 | 156.232.254.26 | 404 | /pmamy2/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:22 | 27.92.169.109 | 156.232.254.26 | 404 | /pmamy/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:22 | 27.92.169.109 | 156.232.254.26 | 404 | /PMA2/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:18 | 27.92.169.109 | 156.232.254.26 | 404 | /pma/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:18 | 27.92.169.109 | 156.232.254.26 | 404 | /pmd/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:18 | 27.92.169.109 | 156.232.254.26 | 404 | /phpMyAdmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:18 | 27.92.169.109 | 156.232.254.26 | 404 | /phpmyadmin/index.php | GET | Mozilla/5.0 | ||
2018/05/10 08:23:18 | 27.92.169.109 | 156.232.254.26 | /index.php | GET | Mozilla/5.0 | |||
2018/05/10 08:23:18 | 27.92.169.109:80 | 156.232.254.26 | 404 | /wls-wsat/CoordinatorPortType | GET | Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0 |
2018/05/21
時々,ブロックされた情報が更新されなくなるので,定期的に再起動させる設定に.
ルータの設定で,「詳細設定」「管理」-「システム」.
「基本設定」-「リブートスケジューラーの有効化」で「はい」に.
「再起動指定日」と「再起動指定時間」を設定.
2018/05/28
ブロック情報が更新されなくなると?,「リブートスケジューラー」の動作も効かなくなる.
2018/07/06
今日も「リブートスケジューラー」の再起動後正しく動作しなくなった.
ランプは全て白だったので有線 LAN は動作していたのかもしれない.
6/17 にも似た様な現象になったが,この時は WAN LED が赤だった?
結局,「リブートスケジューラー」は OFF にして様子見.
Note Station の設定
Note Station をインストールはしていたが,使用していなかった.
Synology NAS をもっと使えないかと調べていたら,このツールが Evernote と似た用途とあった.
DSM の「メインメニュー」から「Note Station」を選択.
起動直後に表示されるリンク,または「設定」ダイアログ内からデスクトップ版を入手.
デスクトップ版 Note Station は,QuickConnect だと簡単に接続できた.
モバイル版は,Synology サイトのここから入ってインストール.
同様に入ろうとするが,なぜか入れない.
この方法がわかり難かった.
「アプリケーション ポータル」で note を設定.
LAN 内であれば 192.168.x.xxx/note と指定することで開ける様になった.
2018/05/13
「File Station」のスマートフォン版「DS File」.
PC からのアクセス(ブラウザで ds116/file)はうまく動作するのに,DS file ではログインできないでいた.
が,今日操作すると入れるようになっている.
その間に弄ったところで思いつくのは,AC86U の「ポートフォワーディング」の設定.
WebDAV http 5005 192.168.1.216 TCP
WebDAV https 5006 192.168.1.216 TCP
設定を外しても動作しているので詳細は不明.
Synology NAS で文字色
別の事を調べていて,次の様な内容を見つけたので Synology NAS でやってみた.
C言語でターミナルで表示される文字をカラー表示させる
コードはそのまま拝借させてもらった.
ANSI escape code
RT-AC86U 追加 – 6
AiProtection で検出されていない?
よくわからないので,とりあえずルータを再起動.
その後は検出されるようになった.
2018/05/08 また,リストには表示されなくなっている.
試しに pixel.bilinmedia.net にアクセスすると,
保護はされているみたい.
AiProtection で検索していたら,動作テストのページへのリンクがあった.
ウイルスバスターCorp. 11.0, XG のWebレピュテーション機能テスト方法
不審接続監視機能(C&Cコンタクトアラート)の概要および設定の有効化について
2018/11/13
先日の再起動(2018/11/05)以来,AiProtection の動作リストは正しく表示されている.
RT-AC86U 追加 – 3
24 時間位で検出されているので,AiProtection のアラート設定.
ASUS FAQ [AiProtection] アラートメールの設定方法
2018/04/26 悪質サイトとしてブロックされた所にアクセスしてみた.
こっちは,侵入防止システムの画像.
それでも,全てをガードできるわけではなさそう.
2018/04/26 13:33:00 | 27.92.169.109 | 120.24.170.24 | 404 | /admin/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:33:00 | 27.92.169.109 | 120.24.170.24 | 404 | /mysql/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:33:00 | 27.92.169.109 | 120.24.170.24 | 404 | /pmamy2/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:33:00 | 27.92.169.109 | 120.24.170.24 | 404 | /pmamy/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:33:00 | 27.92.169.109 | 120.24.170.24 | 404 | /PMA2/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:33:00 | 27.92.169.109 | 120.24.170.24 | 404 | /PMA/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:32:59 | 27.92.169.109 | 120.24.170.24 | 404 | /pma/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:32:59 | 27.92.169.109 | 120.24.170.24 | 404 | /pmd/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:32:59 | 27.92.169.109 | 120.24.170.24 | 404 | /phpMyAdmin/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:32:59 | 27.92.169.109 | 120.24.170.24 | 404 | /phpmyadmin/index.php | GET | Mozilla/5.0 | ||
2018/04/26 13:32:59 | 27.92.169.109 | 120.24.170.24 | /index.php | GET | Mozilla/5.0 | |||
2018/04/26 13:32:58 | 27.92.169.109:80 | 120.24.170.24 | 404 | /wls-wsat/CoordinatorPortType | GET | Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0 |
RT-AC86U 追加 – 2
次に影響が少ない psc 2550 .
固定 IP を DHCP に変更して AC86U に接続したが,DHCP がうまく動作せず後回し.
AP の WN-AC1167R は,単純に繋ぎ変えだけで 192.168.1.xx に.
HDL-AH2W ,HVL-S3 を DHCP に.
DS115j ,DS116 を,DHCP に.
全てを AC86U に接続.BL190HW,AC86U,WR9500N などは何度か再起動.
PC なども ASUS Ruter アプリで確認しながら,必要に応じて再起動.
AP と子機の WR9500N も,繋ぎ変えだけで 192.168.0.2xx から 192.168.1.2xx になった.
何度か再起動が必要なものもあったが,DS11x を除いて移行できた.
psc 2550 も 192.168.1.x になり,固定 IP に設定.
DS115j と DS116 を固定 IP(192.168.1.216)に(以降 4 つ目の値は実際と異なります).
DS115j は公開してないので DHCP で良いが,IP で打つことが多いので固定にしている.
また,AC86U も WAN 側を固定(192.168.0.120)に.
27.92.169.109 — BL190HW — 192.168.0.120 — AC86U — 192.168.1.216
PC から tracert .
1 1 ms 1 ms 1 ms router.asus.com [192.168.1.1] 2 1 ms 1 ms 1 ms web.setup [192.168.0.1] 3 * * * 要求がタイムアウトしました。 4 5 ms 6 ms 6 ms tmfACS001.bb.kddi.ne.jp [27.85.212.25] 5 11 ms 12 ms 12 ms 27.80.241.61 6 10 ms 10 ms 10 ms 27.80.241.238 7 10 ms 10 ms 10 ms jc-osa301.int-gw.kddi.ne.jp [113.157.227.82] 8 ....
LAN 内から,エクスプローラなどではアクセスできるが,http でアクセスできない.
DSM コントロールパネルの「セキュリティ」-「ファイアウォール」-「custom」.
他に,Web アクセスの PHP も 192.168.1.x が有効となる様に変更.
この状態では,Web サーバとして外からアクセスできない.
BL190HW のポートマッピングの設定で,次のものを追加.
192.168.0.120 TCP any
また DMZ の設定に 192.168.0.120 を.
AC86U の「ポートフォワーディング」の設定で次を追加.
HTTP DS116 80 192.168.1.216 TCP
これで,外からは mish.myds.me にアクセスできる様になった.
この 5 時間程度,外からのアクセスは停止.
まだ LAN 内からは mish.myds.me でアクセスできない.
暫くわからず AC86U の IPv6 の関係と思い調べたが,あまり有用な情報は見つけられなかった.
試しに,「Passthrough」,自動接続を「有効」にすると,意図した動作となった.
RT-AC86U 追加
マニュアルのセットアップの部分を読み,Aterm BL190HW の空いた LAN ポートに接続.
設定用の PC は,T90Chi を利用.本当は,有線の方が良いのだろうが面倒だったので…
ハード的な接続後 AC86U の電源を入れると,赤い LED の表示が…
マニュアルによると WAN LED で「IP アドレスが取得できていない」とのこと.
PC から ASUS_00_2G(オープン)に接続すると,ID の設定画面に.
新しく入力して進めると WAN 側が設定され,PC から外への接続はできるようになった.
WAN LED のランプも「白」に.
ここまでは,BL190HW の下に既存の LAN 環境(192.168.0.x)と AC86U が存在する状態.
AC86U の WAN 側は 192.168.0.11 ,LAN 側は 192.168.1.11 .
LAN 内には外からアクセス可能にしているものがある.
WD Cloud
DS116
また,幾つかの機器は固定 IP.
HDL-AH2W,HVL-S3,psc 2550,テスト環境の Web サーバなど.
先ず,他に影響を与えそうにない WD Cloud から.
固定 IP を外して,DHCP に.
AC86U に繋ぎ直すと,特に問題なさそう.
LAN 内で,\\WDCloud は OK.//wdcloud も.
スマートフォン用のアプリも問題なし.
4G 接続でのスマートフォン用アプリも OK.
192.168.0.x で接続している wdcloud.jp も問題なさそう.
WD Cloud のこの辺りの動作は良くできていると思う.
PC やスマートフォンなど動作状況を把握するために,
ASUS Router アプリ
球が作成できない
背景画像のアップロードで,球を生成してそれに貼り付ける.
コード自体はそれほど難しくないので,1 日位でできると思ってた.
Windows のコンソール AP で,次の様なコードを書いてテスト.
MakeBG.cpp
make_bg.hxx
#include "MessBar.hxx" #include "i_Trace.hxx" #include "gonsprm2.hxx" #include "Htm_thrj.hxx" //******************************************************************************* // make bg files imo and html // Create : 2018/04/19 //******************************************************************************* inline bool MakeBG (c_tstring& dibPath) { tstring ext = ::Path_GetExtLow(dibPath) ; if (ext == _T("bmp")) { ; } else if (ext == _T("jpg")) { ; } else if (ext == _T("png")) { ; } else { return false ; } { tstring imoPath = ::Path_ChangeExt(dibPath,_T(".imo")) ; tstring htmName = ::Path_ChangeExt(dibPath,_T(".html")) ; tstring dmpName = ::Path_ChangeExt(dibPath,_T(".ipl")) ; { long div = 90/5 ; v_Vd3A pntsAry = ::BuildSphere(div) ; { std::tout << pntsAry.size() << std::endl ; if (pntsAry.size() > 0) { Vd3A pnts = pntsAry[0] ; std::tout << pnts.size() << std::endl ; } tstring str = ::v_V3_To_tstring(pntsAry,_T(",")) ; { std::tout << str << std::endl ; } ::SaveText(dmpName.c_str(),str) ; } v_Vd2A txuvAry = ::SetTextureUV(pntsAry) ; pntsAry = ::V3_Scale (pntsAry,Vd3(20.)) ; Gons1 gons1 = ::Gons_BuildFace(pntsAry,txuvAry,dibPath.c_str()) ; GonsA ga ; ga.push_back(gons1) ; Ed3 es = ::GonsA_GetExtent(ga) ; { std::tout << imoPath << _T("\t") ; std::tout << ::V3_To_tstring(es.Volume()) << std::endl ; } if (es.Volume() != Vd3(0)) { es = Ed3(es.L*0.01,es.G*0.01) ; ::GonsA_ToOBJ(ga,imoPath.c_str()) ; ::HT_Make_three_js_html(imoPath.c_str(),es) ; } } } return true ; } //******************************************************************************* // Make BG // Create : 2018/04/19 //******************************************************************************* int _tmain (int argc,TCHAR* argv[]) { _tsetlocale(LC_ALL,_T("")) ; { double s = sin(rad(30)) ; double c = cos(rad(30)) ; std::tout << ::To_tstring(rad(30)) << _T("\t") << ::To_tstring(s) << _T("\t") << ::To_tstring(c) << std::endl ; } if (argc > 1) { v_tstring argAry ; for (int index=1 ; index<argc ; index++) { tstring av = argv[index] ; ::MakeBG(av) ; } } else { tstring buf ; buf.resize(1000) ; { while (std::terr << _T("dib ? =") , std::tin.getline(&buf[0],buf.size())) { tstring str = buf.c_str() ; if (str == _T("q")) { break ; } else if (str == _T("Q")) { break ; } str = ::QuotM_Del_All(str) ; if (str.empty()) { continue ; } if (::File_IsNothing(str)) { continue ; } tstring dib_file = str ; ::MakeBG(dib_file) ; } } } return 0 ; } #include "MessBar.cxx"
今度は,DS116 でビルドして実行すると,
Iwao@DS116:/var/.../Test/up_bg/data$ ./a.out 0.523599 98314745853377985068733249901357667205561433229409406145971019710277043155206326909160297391588106447153156445277590513896008090831662627743743127151181611161993303763348552511914898438567008016612049817143085994563143448055356356529593034366351316506187159487365573007925410016860727208738652774465536.000000 98321247861193438769252981549279948821735544950351014769381393881588573259178110828643912278175146924986161470094082713103803921735703931192359519739047155548857037547932930737608178537416409042994283830606984599100883034181136178714087912736395732787698542049681305006129736011480288874859116047106048.000000 dib ? =
本当は,
C:\Users\Iwao\...\i_Tools.tmp>\\DevXP\C_Drive\Temp\DS11x\MakeBG\Release.060\MakeBG.exe 0.523599 0.500000 0.866025 dib ? =
cmath が使えない様で,検索すると「-lm でコンパイルが通る」と言うのは見つかる.
が,コンパイルの問題ではなく,実行でうまくない.
当然ではあるが,DS115j でも同様.
試しに,opkg update と opkg install gcc .
root@DS116:/var/…/Iwao# opkg update
Downloading http://pkg.entware.net/binaries/armv7/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/packages
root@DS116:/var/…/Iwao# opkg install gcc
Upgrading gcc on root from 6.3.0-1 to 6.3.0-1a…
Downloading http://pkg.entware.net/binaries/armv7/gcc_6.3.0-1a_armv7soft.ipk
Configuring gcc.
root@DS116:/var/…/Iwao#
もう一度,ビルドして実行すると,
Iwao@DS116:/var/…/Test/up_bg/data$ g++ MakeBG.cpp
Iwao@DS116:/var/…/Test/up_bg/data$ ./a.out
0.523599 0.500000 0.866025
dib ? =
予想以上に時間がかかってしまったが,何とか…
daikoku_edit.html
2019/02/13 リンクなどを修正
PHP $_FILES
やってないとすぐ忘れてしまうのでメモ.
PHP マニュアル POST メソッドによるアップロード
php 側での次の様な取り出し.
$tempfile = $_FILES[‘fname‘][‘tmp_name’];
‘fname‘ にあたる部分は,input タグの name 属性.
<input type=”file” name =”fname” accept=”.jpg,.png”>
CHttpFile でのアップロード の場合は,汎用的になる様に処理している.
function uf_upload_files () { $d_dir = uf_get_upload_folder() ; // echo $d_dir . "<br/>\r\n" ; $up_status = false ; foreach ($_FILES as $keys => $values) { $file_e = $values ; $tempfile = $file_e['tmp_name'] ; $filename = $d_dir . $file_e['name'] ; $filename = uf_get_up_file_name($filename) ; if (is_uploaded_file($tempfile)) { $up_status = move_uploaded_file($tempfile,$filename) ; } } return $up_status ; }
アップロード先のアクセス権
次の様な htm と php で,画像をアップできる所を用意.
up.htm
<!DOCTYPE html> <html lang="ja" > <head > <meta charset="UTF-8" /> </head> <body > <form action="http:./up.php" method="post" enctype="multipart/form-data"> <input type="file" name ="fname" accept=".jpg,.png"> <input type="submit" value="upload"> </form> </body> </html>
up.php
<?php $tempfile = $_FILES['fname']['tmp_name']; $fileName = './data/' . $_FILES['fname']['name'] ; $up_status = false ; if (is_uploaded_file($tempfile)) { $up_status = move_uploaded_file($tempfile , $fileName ) ; } $frm_src = './' ; if ($up_status) { $frm_src = $fileName ; } header("Location: {$frm_src}") ; ?>
これらのファイルとアップ先のフォルダを用意しただけでは,アクセス権がないのでアップロードできない.
以前は,DSM に入り「File Station」で「権限」を設定していた.
今まで面倒と思いつつ,試しに Windows 環境からアクセス権を「読み取り(RX)(RX)」から「変更」に.
File Station で設定したものと少し異なるが,それなりに動作してそう.
WinFile.exe
Google ニュースで,次の内容を見つけた.
Windows 3.x時代の“ファイルマネージャ”がオープンソース化で復活~Windows 10でも利用可能に
WinXP までは,1999/10/14 8:00:00 の WinFile.exe を使用している.
Win7 でも動作させるための方法があって,試したこともあるがうまく動作しなかった.
Windows File Manager revived
次の所から落として動作を確認してみた.
WinFile v10.0 – Sharing 10 years of improvements
Winfile_orig_plus.zip の方がオリジナルに近いのでやってみたが,設定情報が保存されないみたい.
Winfile_v10.0.zip は,「Properties」などが新しくなってしまっている.
2019/05 v10.0.1901.1 で内容を更新しています.
WinFile.exe v10.0.1901.1
コンソール AP で C2065 C2059
コンソール AP で,ビルドすると
--------------------構成: T_S_xxx - Win32 Debug-------------------- コンパイル中... T_S_xxx.cpp \\devs\documents\develop\_.src\_yet\winmfc.hxx(68) : error C2065: 'CListCtrl' : 定義されていない識別子です。 \\devs\documents\develop\_.src\_yet\winmfc.hxx(68) : error C2065: 'ctrl' : 定義されていない識別子です。 \\devs\documents\develop\_.src\_yet\winmfc.hxx(68) : error C2059: 構文エラー : 'const' \\devs\documents\develop\_.src\_yet\winmfc.hxx(68) : error C2143: 構文エラー : ';' が '{' の前に必要です。 \\devs\documents\develop\_.src\_yet\winmfc.hxx(68) : error C2447: '<L_PROPERTY>' : 関数ヘッダがありません (旧形式の仮引数リスト?) ... \\devs\documents\develop\_.src\_yet\list.hxx(159) : error C2061: 構文エラー : 識別子 'CListCtrl' がシンタックスエラーを起こしました。 \\devs\documents\develop\_.src\_yet\list.hxx(169) : error C2061: 構文エラー : 識別子 'CListCtrl' がシンタックスエラーを起こしました。 ... \\devs\documents\develop\_.src\...\.....cpp(2017) : fatal error C1903: 直前のエラーを修復できません; コンパイルを中止します。 cl.exe の実行エラー T_S_xxx.exe - エラー 24、警告 0
#include <AfxCmn.h> を追加.
MAPI の MapiFileDesc の配列
MFC を使用している方法では,
LateDelete ld ; // MultiByte の必要があるようなので,UNICODE の時のバッファをここに登録 // 添付ファイルの準備 CArray<MapiFileDesc,MapiFileDesc> fileDescA ; int fileCount = 0 ; int index = 0 ; for (index=0 ; index<PathNames.GetSize() ; index++) { CString pathName = PathNames[index] ; if (::FileIsNothing (pathName)) { continue ; } if (::FileIsDirectory(pathName)) { continue ; } MapiFileDesc fileDesc ; memset(&fileDesc,0,sizeof(MapiFileDesc)) ; fileDesc.nPosition = (ULONG)-1 ; #ifdef _UNICODE fileDesc.lpszPathName = SendMail__ChangeMultiByte(PathNames[index],&ld) ; fileDesc.lpszFileName = SendMail__ChangeMultiByte(FileNames[index],&ld) ; #else fileDesc.lpszPathName = LPSTR(LPCTSTR(PathNames[index])) ; fileDesc.lpszFileName = LPSTR(LPCTSTR(FileNames[index])) ; #endif fileDescA.Add(fileDesc) ; fileCount++ ; }
MFC を使用しないコードは,
std::vector<MapiFileDesc> fileDescA ; std::vector<std::string> pathNameA ; std::vector<std::string> fileNameA ; int index = 0 ; { for (index=0 ; index<PathNames.GetSize() ; index++) { { tstring pathName = PathNames[index] ; if (::File_IsNothing (pathName)) { continue ; } if (::File_IsDirectory(pathName)) { continue ; } } std::string pathName= ::To__string(PathNames[index]) ; std::string fileName= ::To__string(FileNames[index]) ; pathNameA.push_back(pathName) ; fileNameA.push_back(fileName) ; } { for (size_t index=0 ; index<pathNameA.size()&&index<fileNameA.size() ; index++) { MapiFileDesc fileDesc ; memset(&fileDesc,0,sizeof(MapiFileDesc)) ; fileDesc.nPosition = (ULONG)-1 ; fileDesc.lpszPathName = &(pathNameA[index])[0] ; fileDesc.lpszFileName = &(fileNameA[index])[0] ; fileDescA.push_back(fileDesc) ; } } }
詳しくは見てないが,幾つかの方法が書かれていたので
Sending Email with MAPI
MapiRecipDesc.lpszAddress の “smtp:”
以前コードを直したのが 2002/4 であまり情報がなかった様に思う.
個人的に書いた内容が「Outlook で配信不能になる」
参考になりそうな所
Email mit Dateien perWinAPI versenden??
MAPISendMail
MSDN MapiRecipDesc structure
Sending email using MAPI causes error on ‘ResolveName’ function in Window7
MAPI を使用した複数ファイルの送信
S_Mail.hxx