webbrowserコントロールのUserAgentの設定方法
設定しない場合は、IE7となるので注意。
オプションには、レジストリを書き換えるオプションもあります。今回は割愛。
Delphi言語
TWebbrowser
設定しない場合は、IE7となるので注意。
オプションには、レジストリを書き換えるオプションもあります。今回は割愛。
Delphi言語
TWebbrowser
// uses UrlMon; // const USERAGENT_IE11 = 'Mozilla/5.0 (Windows NT 10.0; Trident/7.0; rv:11.0) like Gecko'; function SetUserAgent(AUserAgentText : string) : boolean; begin Result := (S_OK = UrlMon.UrlMkSetSessionOption(URLMON_OPTION_USERAGENT, PChar(AUserAgentText), Length(AUserAgentText), 0) ); end;
カテゴリー: ぷろぐらみんぐ
2016.04.13
外部例外 C0000017.
OK
CID_HANDLE_DELETION
https://msdn.microsoft.com/en-us/library/windows/hardware/ff557381%28v=vs.85%29.aspx
How to check a HANDLE is valid or not?
BOOL IsWindow(
HWND hWnd // ウィンドウのハンドル
);
OK
CID_HANDLE_DELETION
https://msdn.microsoft.com/en-us/library/windows/hardware/ff557381%28v=vs.85%29.aspx
How to check a HANDLE is valid or not?
BOOL IsWindow(
HWND hWnd // ウィンドウのハンドル
);
カテゴリー: ぷろぐらみんぐ
2016.03.15
PrintWindow関数
{$if CompilerVersion > 17}
Winspool,
{$ifend}
{$if CompilerVersion <= 17} const PW_CLIENTONLY = $00000001; function PrintWindow(h:HWND; // Window to copy hdcBlt:HDC; // HDC to print into nFlags:UINT // Optional flags ) : BOOL; stdcall; external Windows.user32 name 'PrintWindow'; {$ifend}
カテゴリー: ぷろぐらみんぐ
2016.03.13
最小化後に復元するとフォームサイズが変更される
Delphiで生成したアプリで
Windows8.1のみで 時々 発生するようです
Delphiで生成したアプリで
Windows8.1のみで 時々 発生するようです
カテゴリー: ぷろぐらみんぐ
2016.03.13
C言語のメモリリークテストをしたことがなかったので
調べてみました。 嘘かいているところが多く困りました。
このサンプルは、標準出力にエラーを送ります。
デバッガなどに送るには、_CrtSetReportModeを変更する必要があります。
いつでも再現できるように
コマンドも一緒に埋め込みました。
参考 MSDN
nmake -f Makefile.msc DEBUG=1
!IFDEF DEBUG
CFLAGS += /D_DEBUG /D_CRTDBG_MAPALLOC /MTd /ZI /W3
!ENDIF
以下サンプルソース
調べてみました。 嘘かいているところが多く困りました。
このサンプルは、標準出力にエラーを送ります。
デバッガなどに送るには、_CrtSetReportModeを変更する必要があります。
いつでも再現できるように
コマンドも一緒に埋め込みました。
参考 MSDN
- CRT ライブラリを使用したメモリ リークの検出
https://msdn.microsoft.com/ja-jp/library/x98tx3cf.aspx - _CrtSetReportMode
https://msdn.microsoft.com/ja-jp/library/1y71x448.aspx - _CrtSetReportFile
https://msdn.microsoft.com/ja-jp/library/a68f826y.aspx
nmake -f Makefile.msc DEBUG=1
!IFDEF DEBUG
CFLAGS += /D_DEBUG /D_CRTDBG_MAPALLOC /MTd /ZI /W3
!ENDIF
以下サンプルソース
/* * testleek.c * [cmd.exe] "c:\Program Files\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" (1) リンクも一緒にする
cl.exe testleek.c /D_DEBUG /MTd /ZI -W3
testleek.exe
または (2) objだけ生成して後からリンクする
cl /c -D_DEBUG /MTd -Zi -W3 -Od testleek.c
link /debug testleek.obj testleek.exe */ # define _CRTDBG_MAP_ALLOC # include <stdlib.h> # include <crtdbg.h> int main(void){ _CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF ); _CrtSetReportMode( _CRT_ASSERT, _CRTDBG_MODE_FILE ); _CrtSetReportMode( _CRT_ERROR , _CRTDBG_MODE_FILE ); _CrtSetReportMode( _CRT_WARN , _CRTDBG_MODE_FILE ); _CrtSetReportFile( _CRT_ASSERT, _CRTDBG_FILE_STDOUT ); _CrtSetReportFile( _CRT_ERROR , _CRTDBG_FILE_STDOUT ); _CrtSetReportFile( _CRT_WARN , _CRTDBG_FILE_STDOUT ); char * p=malloc(1000); malloc(7); // _CrtDumpMemoryLeaks(); return(0); }
カテゴリー: ぷろぐらみんぐ
2015.12.05