ホーム » Iwao の投稿

作者アーカイブ: Iwao

2025年5月
 123
45678910
11121314151617
18192021222324
25262728293031

カテゴリー

アーカイブ

ブログ統計情報

  • 115,195 アクセス


ASUSTOR NAS ADM 5.0.0.RHJ2

ADM の更新があったので,いつもの様に…
作業したのが夜中だったため,あまり考えないで「更新」してしまった.


前回の 4.0 に上げた時もそうだったが,そのままではいろいろと動作しなくなってしまった.
更新直後は,Web サーバすら起動できない状態だった.
ADM 5.0 Web サーバが起動しない
これは「Nginx」に切り替えることで動作可能にはなった?
Joomla! 3 はサポートされなくなり「Joomla!-Docker」になった.
Joomla! は起動するようになったが,管理者として入る方法がわからず.
WordPress と VirtualBox は,最初の Web サーバと同様の Error 500 .

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

Synology NAS で .NET web

Synology NAS で動かす前に,Win11 環境で…
dotnet new web
dotnet run
dotnet new web
localhost:5073

他の PC などから接続可能なように app.Urls.Add("http://0.0.0.0:3000"); を追加.

var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();

app.Urls.Add("http://0.0.0.0:3000");
app.MapGet("/", () => "Hello World!");

app.Run();

dotnet run として,動作を確認.
Program.cs などが入ったフォルダ以下を Synology NAS にコピー.
dotnet web1.dll で実行.
dotnet web1.dll で実行
Synology NAS dotnet web Hello


【#3】.NET Core MVC初心者チュートリアル はじめてのMVCアプリ
8 ways to set the URLs for an ASP.NET Core app
シンプルな ASP.NET Core Web API アプリケーションを作成する
ASP.NET Core入門 – Program.cs 解説【.NET 8】

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

VS 2022 Application Error

先日,VS 2022 の更新があった.
その影響なのかはわからないが,あるソリューションを開くと起動してしばらくして,終了してしまう様になった.
他のソリューションは問題ない.
イベントビューアではアプリケーションエラーとして記録されている.
アプリケーション:devenv.exe
フレームワークのバージョン:v4.0.30319
説明: ハンドルされない例外のため、プロセスが中止されました。
例外情報:例外コード c0000005、例外アドレス 00007FF88908246C

アプリケーション:devenv.exe
フレームワークのバージョン:v4.0.30319
説明: ハンドルされない例外のため、プロセスが中止されました。
例外情報:例外コード c0000005、例外アドレス 00007FF88908246C

障害が発生しているアプリケーション名: devenv.exe、バージョン: 17.14.36109.1、タイム スタンプ: 0x681e2a3e
障害が発生したモジュール名: vcpkg.dll、 バージョン: 17.0.36109.1、タイム スタンプ: 0x6a2b7313
例外コード: 0xc0000005
フォールト オフセット: 0x000000000029246c
フォールト プロセス ID: 0x60C4
アプリケーションのフォールトの開始時刻: 0x1DBC9F9DD979C26
Faulting アプリケーション パス:  C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\devenv.exe
Faulting モジュール パス:  C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\VC\vcpackages\vcpkg.dll
Report Id: 0763b126-40a9-4482-ad33-d32e7ebe72a2

障害が発生しているアプリケーション名: devenv.exe、バージョン: 17.14.36109.1、タイム スタンプ: 0x681e2a3e
障害が発生したモジュール名: vcpkg.dll、 バージョン: 17.0.36109.1、タイム スタンプ: 0x6a2b7313
例外コード: 0xc0000005
フォールト オフセット: 0x000000000029246c
フォールト プロセス ID: 0x60C4
アプリケーションのフォールトの開始時刻: 0x1DBC9F9DD979C26
Faulting アプリケーション パス:  C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\devenv.exe
Faulting モジュール パス:  C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\VC\vcpackages\vcpkg.dll
Report Id: 0763b126-40a9-4482-ad33-d32e7ebe72a2

とりあえずメモ.


対象の .vs 以下を削除したが変わらず.
_FallBckSymbolCache も削除したが,当然変わらず.


さらに絞って,ソリューションに FindB143.vcxproj を追加すると,数秒後終了してしまうことがわかった.
FindB143.vcxproj
VS 2019 では FindB142.vcxproj を含むソリューションも問題ない.


2025/05/22 17.14.1 へのアップデートがあったが,変わらず.

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

Synology NAS で .NET

Synology NAS の「パッケージ センター」を見ていたら,「.NET 9 runtime」に気づいた.
それで,どのようなことができるかを少し試してみた.


DS116 では dotnet コマンドがうまく動作せず,エラーになる.
DS116  dotnet: /lib/libc.so.6: version `GLIBC_2.34' not found (required by dotnet)
dotnet: /lib/libc.so.6: version `GLIBC_2.34′ not found (required by dotnet)
DS220+ の libc.so.6 と比べると GLIBC_2.34 がない?
DS116 と DS220+ の libc.so.6


DS116 はあきらめて,DS220+ の方に「.NET 9 runtime」をインストール.
dotnet コマンドは動作するようになった.
DS220+  dotnet


.NET のサンプルで検索すると,.NET CLI 関係が見つかり,開発環境では次のコマンドで Hello, World! が表示できる.
dotnet new console
dotnet run
Win11 環境ではうまく動作することを確認.


Synology NAS で試すと .NET SDK がないためエラーとなる.
dotnet new console
NAS に .NET SDK を入れる方法がわからなかったので,Win11 で作成したものをそのままコピー.
何とか起動できないものかと試すがよくわからず…


あきらめかけていたが,dotnet ~.dll で実行できる記述を見つけた.
dotnet net2/bin/Debug/net9.0/net2.dll


dotnetコマンドを使って、Visual Studioを起動せずに簡単にプログラムを作成する
ubuntuでc#のサンプルアプリを動かすまでのメモ
Ubuntuリポジトリに取り込まれたパッケージ版.NETで、UbuntuでもC#プログラミングを始めよう!
C#(.NET Framework)で作ったコンソールアプリを .NET Core を使ってLinuxで動かしてみる!【前編】
dotnet new コマンドで使うテンプレートを作成する

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

PDF 埋め込みテスト

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

Win11-VS6 22H2

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

start mailto:test@example.com

新しい Outlook では MAPI サポートがなくなった?
新しい Outlook で使用できない機能: 拡張性
新しい Outlook と従来の Outlook の機能の比較
そのため,テンポラリに zip として圧縮して,それを手動で起動したメールソフトに添付して利用している.
これをもう少し簡単にできないかと…


思いついたのは,どこかにアップロードして,そのリンクからダウンロードする方法.
3D ツール
https://itl.mish.work/i_Tools/upload/share/data/Iwao-index-2025-04-21.htm


最近あまり見なくなったように感じるが,次の様な html でのリンクがある.
mailto:test@example.com
これを何とか呼び出せないか?
エクスプローラのアドレス欄に “mailto:test@example.com” と入力すると,メールソフトが起動できる.


コマンドプロンプトで試すと,”start mailto:test@example.com” と入力することで同様にできた.
start mailto:test@example.com


::ShellExecute では lpFile に指定することで同じように起動できる.
::ShellExecute  mailto:test@example.com
::ShellExecute で次の様に指定すると,「件名」と「本文」にそれぞれ “Hello” と “body” が入って起動できる.
mailto:test@example.com?Subject=Hello&body=body
コマンドプロンプトでは最初うまく起動できなかった.
start コマンドを調べると,省略可能な title があり,それを “” の様に空にして指定して意図した動作となった.
Windowsコマンドプロンプトの「start」コマンドを徹底解説:基本から応用まで
start "" "mailto:test@example.com?Subject=Hello&body=body"


今回やりたかったことからは外れるが,次の様に BAT ファイルなどにしておけばテンプレートとして利用可能.
「start "" "mailto:test@example.com?Subject=Hello&body=body"」の BAT ファイル

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

VC 2022 メモリレイアウト

1年位前には追加されていたみたいだが,VC 2022 での面白い機能を見つけた.
VC 2022 メモリレイアウト表示
STL が追加され,MFC に依存しないコードとして書いたものはある程度まとまっていると思う.
それ以前の MFC を使用したものは,今見直すと嫌になるものが多い.
特に 1990 年代前半に書いたものは,CArray もなかったため CString の配列などが存在する.
他にも TCHAR の配列などもあったが,それらはほとんど CString や std::tstring として書き直した.
サイズが大きいクラスなどは書き直したいな…

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

Windows SAC その後

先週ビルドしたものを,SAC が ON 環境で実行するとまたブロックされるものが幾つか…
よくわからないのが,環境によりブロックされる exe が異なる?
また,何度か起動を試みるとブロックされなくなることもあり.


他に,Windows Update で更新することにより,ブロックされなくなるものもあった.
Defender の更新


Microsoft Windows Defender の定義ファイルの更新・バージョン確認方法

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

False Positive Report

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

Windows SAC と Defender

先日から「スマートアプリコントロール」が「ON」の状態でいろいろとやっている.
VC 2022 でビルドしたもので幾つかブロックされる exe がある.
また SAC のブロックが解除されたものでも,Defender でガードされることもある.
この場合は exe が起動されて表示後,しばらくすると勝手に終了する.


同じコードを VC 2017 などでビルドするとブロックされないこともある.
それで,VirusTotal で,幾つものアンチウィルスで誤検知されている exe のみ VC 2017 でビルドしたものに差し替え.
2025/03/14  VC 14.3 , 14.1
それを msi として作成して SAC ON 環境で起動すると,ブロックされることなくインストールできた.

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

exe に自己署名証明書

先日から「スマート アプリ コントロール」に関していろいろやっている.
多くの exe はうまく起動するようになったみたいだが,まだブロックされてしまうものがある.
ClipView.exe   VC.14.3  2025/03/05 16:58:52
それで,自己署名証明書について調べた.


検索すると次のようなページが見つかる.
コード署名用証明書と Visual Studio での署名設定
自己証明書を作成して実行ファイルに署名する
自作ソフト「exe」への自己署名 VisualBasic
が,詳しく書かれているため,簡単に手順をまとめたものが欲しかった.次の所に書かれている.
テストや社内使用のために独自の証明書を作成する


そこに書かれていることと同じだが…
1. makecert.exe で cer と pvk を作成.
2. pvk2pfx.exe で cer と pvk から pfx を作成.
3. signtool.exe で pfx を exe などに追加.
4. インストール先に cer を登録.


"C:\Program Files (x86)\Windows Kits\10\bin\x86\makecert.exe" -r -sv MyCert.pvk -n "CN=DevABC" MyCert.cer -b 01/01/2025 -e 01/01/2100
"C:\Program Files (x86)\Windows Kits\10\bin\x86\pvk2pfx.exe"  -pvk   MyCert.pvk -pi test  -spc MyCert.cer -pfx MyCert.pfx -po test
"C:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe" sign /fd SHA256 /f MyCert.pfx /p "test" ClipView.exe

ClipView.exe  に自己署名証明書を追加
これでこの exe も起動できるようになった.
VirusTotal 自己署名証明書 なし あり


2025/03/12
何かを間違えたのか,自己署名証明書を追加した msi のインストールがうまく動作しない.
「自己署名証明書」月の場合,SAC に引っかかる.
オリジナルの iTls143.msi 2024/12/16 17:24:28 ならば OK .
「自己署名証明書」を付加したのもので「修復」


2025/03/13
昨日うまく動作しなかった msi も,今日は大丈夫になった.
が,「修復」を選択した場合は相変わらず…
一度「削除」して,新規にインストールする手順であれば OK .


2025/03/14
exe の場合,最後に 1344 バイト付加されている.
exe  最後に付加されている


Windows向けソフトウェアのコードサイン証明書の署名方法
exeファイルと証明書を作成してデジタル署名を付与してみる
検証用コードサイニングEXEと無署名EXE

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

スマートアプリコントロール

私が作成している exe ではないが,「スマート アプリ コントロール」に引っかかると聞いて,いろいろと試した.


メイン PC などは「オフ」になっているので,仮想マシンに「Win11 24H2 Feb 2025」を新規インストール.
個人的に作成したツールなどをコピー.VS 6 をインストール.
仕事で作成しているパッケージ 2024.10 をインストール.


一通りの動作を確認.ほぼ問題なさそうだったが,一部の個人的なツールが引っかかった.
以前からある Defender の「許可」する様な操作で復元.
CopyNewF.exe  Trojan:Win32/Wacatac.B!ml
この段階で VirusTotal でチェックすると確かに引っかかっている.
VirusTotal  CopyNewF.exe
「スマート アプリ コントロール」の設定は「評価」が選ばれている状態.


仮想ハードディスク vdi をコピー.
コピーした方の「スマート アプリ コントロール」の設定を「オン」に(Win11-SAC).
すると個人的なツール.msi をインストールしようとするがインストールできない
検索すると「スマート アプリ コントロール」の影響らしい.
どうしたものかと思いながら,もう一つの「評価」となっている仮想マシン(Win11-PFW)でいろいろと操作.
また並行して今回テストしている exe を VirusTotal でチェック
数個の exe が引っかかった.それぞれ「許可」して復元.


そんなことをいろいろとしていると「オン」の方でも exe が動作するようになった.
また,msi を使用したインストールも可能になっている.


2025/03/10
先日うまく動作するようになったものが,またガードされてしまうものがある.
他の仮想マシンで exe を起動すると,その後うまく動作するようになったり…
また,インストールした exe が消された(隔離された)ものもあった.
VirusTotal   ClipView.exe 2025/03/05


Windows 11 22H2のスマート アプリ コントロールの挙動#1
【Windows11】スマートアプリコントロールをオフにする手順と注意点


2025/03/17
先週ビルドして,個々の exe などはうまく動作することを確認.
それをインストールするために msi を作成したが,そちらは SAC に引っかかる状態.
今日確認すると,msi でインストールできないのは相変わらず.
個々の exe を起動しようとすると,半分くらいが SAC に引っかかる様になっていた.
休みを挟んでしまう(期間があいてしまう)と,何か(カウンタの様なもの)がリセットされてしまうのか?
いろいろと探していたら,Microsoft の報告するページを見つけた.
Microsoft Security Intelligence      Submit a file for malware analysis
その中に「Smart App Control」の選択肢があったので,報告してみた.
Submit a file for malware analysis
進行状況を「More」-「Submissions」-「View submission history」で確認できる.
View submission history


2025/03/18
1つの exe は完了して,SAC に引っかからなくなった.VirusTotal ではまだ他のもので誤検出あり
msi などは「In progress」
「Completed」となったので確認すると,修復されたとある.
msi でのインストールも通る様になった.


2025/03/24
朝動作を確認すると,先日インストールできた exe の 5/22 が,またブロックされるようになっていた.
いろいろとやって,今はうまく起動するようになっている.
また msi もダメで,アンインストール後インストールを試すとブロックされてしまう.
SAC が有効な仮想マシンを新規に作成して,開発している製品の 2024.10.iso でインストール…
が,ブロックされてインストールできない.
しばらくいろいろとやっていると,そのうちにインストールできるようになった.
午前中ダメだったものも含め,いろいろなもののブロックが解除されたみたい.

Is this 投稿 useful? Useful Useless 1 of 1 people say this 投稿 is useful.

Red Sift Certificates Lite

先日から次の様なメールが来ている.
Let's Encrypt Expiration Emails Update
Let’s Encrypt からの有効期限の通知を終了するというもの.
https://letsencrypt.org/2025/01/22/ending-expiration-emails/
最近は NAS 側での自動更新がうまく働いてはいる.
が,念のためそこに書かれている Red Sift での設定を行った.
Google アカウントで「Sign up」.
Sign up to Red Sift
「ADD DOMAIN」で登録することにより,ここで監視されるようになる.
Red Sift  Add Domain

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

2D 配列の配列の ::PolyPolygon

2 年位前に書いた,2D 配列を表示するコード.

BOOL	PolyPolygon	(HDC hDC,const v_Vd2A& v_v2a)
{
	std::vector <POINT>	points ;
	std::vector <int>	counts ;
	for (size_t index=0 ; index<v_v2a.size() ; index++) {
		const	Vd2A&	v2a = v_v2a[index] ;
		for (size_t p_index=0 ; p_index<v2a.size() ; p_index++) {
			Vd2	vd2  = v2a[p_index] ;
			POINT	pt2  = {  long(vd2.x) , long(vd2.y)  } ;
			points.push_back(pt2) ;
			}
		counts.push_back(int(v2a.size())) ;
		}
	return	::PolyPolygon(hDC,&points[0],&counts[0],int(counts.size())) ;
	}

それ以前は,コンソール AP で DC を使うことを考えてなかった.
また最近は,コンソール AP での GDI 描画もしていなかった.


今やろうと思っていることで,個人的なコードを調べていて

{
	HWND	hWnd = ::GetConsoleWindow() ;
	{
		vv_PLF	d_plf = vvplf ;
		{
			d_plf = ::PLF_Translate(d_plf,Vd3(200)) ;
			}
		::ClearWindow(hWnd) ;
		HDC	hDC  = ::GetDC(hWnd) ;
		{
			v_Vd2A	v_v2a = ::ToVd2A(d_plf) ;
			::PolyPolygon(hDC,v_v2a) ;
			}
		::ReleaseDC(hWnd,hDC) ;
		}
	}

こんな感じで使える.
::PolyPolygon  ( HDC , v_Vd2A )
WebGL での 3D データ表示


やりたかったのは,三角形分割で正しくできたかどうか?

	Vd3A	v3a = ::ToVd3A(pts) ;
	{
		Vd3 	nv  = ::V3_GetNormal(v3a) ;
		std::tout << nv.Length() << std::endl ;
		}
	{
		v_Vd3A	t_a = ::V3_Triangulation(v3a) ;
		Vd3 	n_v ;
		for (size_t index=0 ; index<t_a.size() ; index++) {
			Vd3A	tri = t_a[index] ;
			Vd3 	tnv = ::V3_GetNormal(tri) ;
			n_v += tnv ;
			}
		std::tout << n_v.Length() << std::endl ;
		}

n点からなる多角形の面積を求める
多角形の面積を求める
多角形の面積(凸じゃなくても可)は外積で求まる

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

ダブルクリックで開かない

MDI exe で,ドキュメントをダブルクリックして開けないものがある.
exe が起動された後,もう一度ダブルクリックすると開ける.
ドキュメントをダブルクリックで exe は起動するが,データが開かれない.
VC のバージョンによる違いかと思っていたが,他にも何か条件がありそう.
VC6 exe は問題なさそう.VC12 でうまくないことはあった.VC 2022 exe は今は開けない.
いろいろやっていると開けるようになることもある.


この動作をデバッガで確認したいと思ったが…
最初 DebugBreak() を追加してみたが,うまく止められなかった.
それで,次のようにメッセージボックスを表示して停止し,デバッガからアタッチしてテストすることにした.

BOOL CGLSmthApp::InitInstance()
{
	if (!AfxOleInit()) {
		AfxMessageBox(_T("OLE の初期化に失敗しました。")) ;
		return	FALSE ;
		}
#ifdef	_DEBUG
//	DebugBreak();
	AfxMessageBox(_T("Wait")) ;
#endif
	//	...
	}

これでデバッグ自体はできるようにはなったが DDE の動作部分はうまくデバッグできない.


結局どうすれば良いのかはわかっていないが,DDE が動作するときに時間がかかるとうまく開けない?

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

レジストリに文字化けしたキー

先日から CDocManager::RegisterShellFileTypes 関係を調べている
以前やった時は,MFC に依存した自前のコードが多かったのと,もう少し使いやすくできないかと…


それでいろいろとやっていると,レジストリの HKCU\Software\Classes\ の下に文字化けしたものができてしまった.
HKCU_Software_Classes___
REG_SZ の (ext)_auto_file となっている.
これは,ドキュメントをダブルクリックして「常に使う」を選んだ時と思うが,はっきりしない.
Win10 環境でも同様?
Win10   HKCU\Software\Classes\ ...


レジストリの直接編集によるファイルの拡張子と関連づけ
Windows 11とレジストリに非ASCII文字を利用するアプリに非互換問題 ~BSoDが発生
特定のレジストリ キーを削除できません。キーの削除中にエラーが発生する


関連付けのレジストリをチェックしましょう

Is this 投稿 useful? Useful Useless 1 of 1 people say this 投稿 is useful.

error D8016 : /clr /RTC1

VC 6 で作成して VC 2022 まで順に上げた MFC プロジェクトで /clr を有効にしてビルド.

22:39 でビルドが開始されました...
1>------ ビルド開始: プロジェクト: GLSmth, 構成: Debug Win32 ------
1>cl : コマンド ライン  error D8016: コマンド ライン オプション '/clr' と '/RTC1' は同時に指定できません
1>プロジェクト "GLSm143.vcxproj" のビルドが終了しました -- 失敗。
========== ビルド: 成功 0、失敗 1、最新の状態 0、スキップ 0 ==========
=========== ビルド は 22:39 で完了し、00.707 秒 掛かりました ==========

通常はプロジェクトの設定で「C/C++」-「コード生成」-「基本ランタイムチェック」で「既定」を選択すれば良い.
「C/C++」-「コード生成」-「基本ランタイムチェック」で「既定」
が,今回はそれだけではエラーのまま.


vcxproj をエディタで開いてみると EnableFastChecks という部分が存在している.

    <ClCompile Include="GLSmth.cpp">
      <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
    </ClCompile>

「ソリューション エクスプローラー」ですべての cpp を選択して,「既定」などを選択する必要がある.
すべての cpp を選択して,「基本ランタイムチェック」で「既定」に

Is this 投稿 useful? Useful Useless 1 of 1 people say this 投稿 is useful.

error C3010: ‘return’: OpenMP

以前,OpenMP を有効にしないで使用していたコード.
最近のコードで,OpenMP を有効にしたプロジェクトが増えてきた.
それでビルドしていると C3010 のエラーになってしまう.


関連する部分を,単体テスト用の cpp に張り付けてビルド.
OpenMP   error  C3010

11:21 でビルドが開始されました...
1>------ ビルド開始: プロジェクト: C_drv, 構成: Debug Win32 ------
1>C_drv.cpp
1>L:\Document\Develop\VC_Test\PC_doc\C_drv\C_drv.cpp(60,36): error C3010: 'return': OpenMP 構造化ブロックからのジャンプは許可されていません
1>L:\Document\Develop\VC_Test\PC_doc\C_drv\C_drv.cpp(64,45): error C3010: 'return': OpenMP 構造化ブロックからのジャンプは許可されていません
1>L:\Document\Develop\VC_Test\PC_doc\C_drv\C_drv.cpp(67,4): error C3010: 'return': OpenMP 構造化ブロックからのジャンプは許可されていません
1>L:\Document\Develop\VC_Test\PC_doc\C_drv\C_drv.cpp(69,3): error C3010: 'return': OpenMP 構造化ブロックからのジャンプは許可されていません
1>プロジェクト "C_drv.vcxproj" のビルドが終了しました -- 失敗。
========== ビルド: 成功 0、失敗 1、最新の状態 0、スキップ 0 ==========
=========== ビルド は 11:21 で完了し、06.452 秒 掛かりました ==========

OpenMP のコードの部分を一つの関数とすることで対応.

bool	NET_is_valid	(LPCTSTR path)
{
	tstring	net_root = ::Path_Get_net_root(path) ;
	bool	is_valid = false ;
	#ifdef	_OPENMP
		#pragma	omp	critical	(NET_is_valid)
	#endif
	{
		is_valid = ::NET_is_valid_critical(net_root) ;
		}
	return	is_valid ;
	}

何故か,VC 2015 と 2017 ではエラーにならなかった.

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

Win11 コンソール AP で DC

今まで Win10 をメインで使用していたので気づかなかったが…
Win10 でうまく使えていた GDI の描画が Win11 ではうまく行われない?
どうも,デフォルトの設定では新しい「ターミナル」が使用されることによるみたい.
「Windows コンソール ホスト」を選択
ターミナルの「設定」から入って「Windows コンソール ホスト」を選択して「保存」する.


これで正しく表示されるようになった.
Win11 コンソール AP で GDI 描画

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.