次のメソッドは、ナビゲーションウィンドウを更新することはできません
/ *
notifychanges.c - win32のサブシステムとグローバルのプログラムの実行を通知するには
、このようなシステム環境変数として変化します。
著作権(C)2015、アミット・バクシ<gmailのドットコムでambakshi>
すべての権利を保有しました。
BSDライセンスの下で配布されています。詳細については、付属のライセンスを参照してください。
* /
#ifndefの_WIN32_WINNT
の#define _WIN32_WINNT 0x0503
#endifの
書式#include <windows.hに>
する#include <SHLOBJ.H>
書式#include <stdlib.h>に含ま
#ifdefの_MSC_VER
の#pragmaコメント(libに、 "user32.lib")
の#pragmaコメント(LIB、 "shell32.lib")
の#pragmaコメント(libに、 "てKernel32.lib")
#endifの
int型Win32_Notifychanges(){
DWORD * dwRes。
INTタイムアウト= 5、R。
SHChangeNotify(SHCNE_ASSOCCHANGED、SHCNF_FLUSH、0、0); // dirとファイルの両方で動作します
// SHChangeNotify(SHCNE_ASSOCCHANGED、SHCNF_IDLIST、0、0); //動作は上記と同様である
// SHChangeNotify(SHCNE_UPDATEDIR、SHCNF_IDLIST、0、0); //ませ効果
//どちらも効果なし。
R = SendMessageTimeout(HWND_BROADCAST、WM_SETTINGCHANGE、0、(LPARAM)lParamに、SMTO_BLOCK、タイムアウト×1000、NULL);
printf( "R%D \ n"、R)。
IF(R!= 0){
R = SendMessageTimeout(HWND_BROADCAST、WM_SETTINGCHANGE、0、0、SMTO_BLOCK、タイムアウト×1000、NULL)= 0!。
printf( "R再び%D \ n"、R)。
}
Rを返します。
0を返します。
}
メインINT()
{
Win32_Notifychanges();
0を返します。
}