IwaoDev

この画面は、簡易表示です

2022 / 8月

GetActiveView

投稿日 by Iwao

いつも面倒と思う CView の取得.
https://dev.mish.work/wordpress/2022/05/20/drop-lnk-on-mdi-exe/
普通は,CDocument から CView を操作することはあまりないものと思う.
が,今回はテスト用のコードで CView での表示情報を更新したくなった.

	{
		CFrameWnd*	pFrameWnd    = (CFrameWnd*)AfxGetMainWnd() ;
		CFrameWnd*	pActiveFrame = pFrameWnd->GetActiveFrame() ;
		{
			CXxxView*	pView = (CXxxView*)pFrameWnd->GetActiveView() ;
			if (pActiveFrame != NULL) {
					pView = (CXxxView*)pActiveFrame->GetActiveView() ;
				}
			if (pView != NULL) {
				PartsA	sel_pa = *(pView->GetSelectP()) ;
				{
					PartsA	err_pa = ::xx_get_error_xx(...) ;
					sel_pa += err_pa ;
					}
				*(pView->GetSelectP()) = sel_pa ;
				}
			}
		UpdateAllViews(NULL) ;
		}

それを関数に.

CView*	Get_active_view	(void)
{
	CFrameWnd*	pFrameWnd    = (CFrameWnd*)AfxGetMainWnd() ;
	CFrameWnd*	pActiveFrame = pFrameWnd->GetActiveFrame() ;
	{
		CView*	pView = pFrameWnd->GetActiveView() ;
		if (pActiveFrame != NULL) {
				pView = pActiveFrame->GetActiveView() ;
				}
		return	pView ;
		}
	return	NULL ;
	}

Get_active_view

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  • カテゴリー:

クリップボード ビューア

投稿日 by Iwao

以前まとめたもの.
ClipView.doc


MSDNのドキュメントは,”Creating a Clipboard Viewer Window” で見つかる.
https://msdn.microsoft.com/en-us/library/windows/desktop/ms649016.aspx
mk:@MSITStore:j:\MSDN\ipc.chm::/hh/winbase/clipbrd_47ok.htm

WM_CREATE ビューアとしての登録
NextWnd = ::SetClipboardViewer(hWnd) ;

WM_DESTORY ビューアの登録解除
::ChangeClipboardChain(hWnd,NextWnd) ;

WM_CHANGECBCHAIN 他のビューアが登録解除された
if ((HWND)wParam == NextWnd) { NextWnd = (HWND)lParam ; }
else if (NextWnd != NULL) { ::SendMessage(NextWnd,uMsg,wParam,lParam) ; }

WM_DRAWCLIPBOARD クリップボードの内容が更新された
// 描画または相当の動作
if (NextWnd != NULL) { ::SendMessage(NextWnd,uMsg,wParam,lParam) ; }


この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。


Authentication for … failed.

投稿日 by Iwao

ASUSTOR NAS からのメール.
This is a system event notification sent from AS5202T.
Event Level: WARNING
Date: 2022/08/13 00:00
User: SYSTEM
Event: [Certificate Manager] Authentication for mish.myasustor.com failed.
Event: [Certificate Manager] Authentication for mish.myasustor.com failed.


NAS の ADM に入って「設定」-「証明書管理者」.
「mish.myasustor.com」を選んで「編集」.「証明書を更新」.
ASUSTOR NAS  手動での「証明書を更新」
何故かうまく更新できない.QNAP NAS の方はうまく更新されている.


回数制限に引っ掛かってしまったので後日.
ポートフォワーディングの設定?
それとも,他ユーザによる myasustor.com での制限


2022/08/19
回数制限が解除された?みたいで,再度「証明書を更新」.
設定を適用できません。 再試行してください。 (Ref. 5401)
うまく更新できない.
そのうち,また回数制限に.


ASUSTOR のコミュニティサイトで,同様の投稿があった.
設定を適用できません。 再試行してください。 (Ref. 5401)
ひょっとして,どこかの不具合?


2022/08/23
Let’s Encrypt から次のメールが届いた.
Let’s Encrypt certificate expiration notice for domain “as.mish.work” (and 1 more)
Let’s Encrypt Expiry Bot
Hello,
Your certificate (or certificates) for the names listed below will expire in 17 days (on 10 Sep 22 07:26 +0000). Please make sure to renew your certificate before then, or visitors to your web site will encounter errors.
We recommend renewing certificates automatically when they have a third of their total lifetime left. For Let’s Encrypt’s current 90-day certificates, that means renewing 30 days before expiration. See https://letsencrypt.org/docs/integration-guide/ for details.
as.mish.work
mish.myasustor.com
For details about when we send these emails, please visit: https://letsencrypt.org/docs/expiration-emails/ In particular, note that this reminder email is still sent if you’ve obtained a slightly different certificate by adding or removing names. If you’ve replaced this certificate with a newer one that covers more or fewer names than the list above, you may be able to ignore this message.
For any questions or support, please visit: https://community.letsencrypt.org/ Unfortunately, we can’t provide support by email.
If you are receiving this email in error, unsubscribe at:
http://delivery.letsencrypt.org/track/unsub.php?u=30850198&id=82858f9794a44c0f8e72a5c25c74eb4d.WZdjCQO96%2FOPKKnNcXSSJq4c5Ck%3D&r=https%3A%2F%2Fmandrillapp.com%2Funsub%3Fmd_email%3Di%252A%252A%252A%252A%2540a%252A%252A%252A%252A.%252A%252A%252A
Please note that this would also unsubscribe you from other Let’s Encrypt service notices, including expiration reminders for any other certificates.
Regards,
The Let’s Encrypt Team


2022/08/28
今日も「証明書を更新」が押せるようになったが,また回数制限に.
それで,いろいろと調べていて,LAN 内であれば mish.myasustor.com にアクセスできることは確認した.
WAN から(スマートフォンの回線で現状は IPv4 接続)はアクセスできない.
nslookup で見ると IPv4 のアドレスが表示されない.
先日の ADM のアップデートで IPv6 がサポートされるようになり,その影響か?
一度「設定」-「ネットワーク」-「一般」の「IPv6を有効にする」のチェックを外して,付け直し.
それにより,IPv4 での接続ができるようにはなった.
nslookup mish.myasustor.com


2022/09/05
IPv4 で外から接続できることを確認して「証明書を更新」してみたが,これでもうまくいかない.
「ポートフォワーディング」を設定して NAS に転送する様にしても特に変わらず.


2022/09/12
今度は「新しい証明書を作成する」でやってみた.
すると「サブジェクトの別名」を指定しなければうまくいく.
「サブジェクトの別名」で「as.mish.work」を指定した場合に,うまくたどり着けない?
別の証明書として,as.mish.work を登録することにした.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。


CWinApp::m_pszAppName

投稿日 by Iwao

今更の内容ではあるが…
MFC の SDI や MDI で,アプリケーション名は,作成したプロジェクト名?になる.
ダイアログベースで作成した場合は exe 名になってしまう.
困ることがあるのが exe 名を変更した場合のレジストリキー.


CWinApp::m_pszAppName はヘルプにある様に,AFX_IDS_APP_TITLE がなければ exe 名となる.
CWinApp:: m_pszAppName
コードは MFC 6 のものだが,MFC 14.3 でも同様.
CWinApp::SetRegistryKey で m_pszAppName を利用している.
exe 名と異なるものを使用する場合,リソースの AFX_IDS_APP_TITLE を変更するか,なければ追加すれば良い.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  • カテゴリー:

VC 2022 ビルドでエラー

投稿日 by Iwao

VC 2022 でビルドしようとすると,次の様なエラー.
—————————
Microsoft Visual Studio
—————————
オブジェクト参照がオブジェクト インスタンスに設定されていません。
—————————
OK
—————————
オブジェクト参照がオブジェクト インスタンスに設定されていません。
プロジェクトの設定などを見直しても特に怪しい部分はなさそう.
ビルド時に生成される幾つかのファイルを手動で削除しても特に変わらない.


さっきまで動作していた VC 2019 も同様のエラーに.
以前うまく動作しているはずのプロジェクトをコピーして,ビルドしようとしても同様.
こうなると,プロジェクトの設定ではなく,環境っぽい.


PC を再起動してうまく動作する様になった.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 1 人中 1 人がこの 投稿 は役に立ったと言っています。



top