Feature: Add a menu to input YAMA_DBG which allows debugging
This commit is contained in:
Binary file not shown.
@@ -643,6 +643,7 @@ CMy2015RemoteDlg::CMy2015RemoteDlg(CWnd* pParent): CDialogLangEx(CMy2015RemoteDl
|
||||
m_bmOnline[57].LoadBitmap(IDB_BITMAP_UNINSTALL);
|
||||
m_bmOnline[58].LoadBitmap(IDB_BITMAP_COPY);
|
||||
m_bmOnline[59].LoadBitmap(IDB_BITMAP_ACTIVE_WND);
|
||||
m_bmOnline[60].LoadBitmap(IDB_BITMAP_DEBUG);
|
||||
for (int i = 0; i < PAYLOAD_MAXTYPE; i++) {
|
||||
m_ServerDLL[i] = nullptr;
|
||||
m_ServerBin[i] = nullptr;
|
||||
@@ -997,6 +998,7 @@ BEGIN_MESSAGE_MAP(CMy2015RemoteDlg, CDialogEx)
|
||||
ON_COMMAND(ID_COPY_CLIENT_INFO, &CMy2015RemoteDlg::OnCopyClientInfo)
|
||||
ON_COMMAND(ID_ONLINE_ACTIVE_WND, &CMy2015RemoteDlg::OnOnlineActiveWnd)
|
||||
ON_COMMAND(ID_ONLINE_VIEW_WND, &CMy2015RemoteDlg::OnOnlineWindowManager)
|
||||
ON_COMMAND(ID_ENABLE_DEV_DEBUG, &CMy2015RemoteDlg::OnEnableDevDebug)
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
|
||||
@@ -1098,6 +1100,7 @@ VOID CMy2015RemoteDlg::CreateSolidMenu()
|
||||
m_MainMenu.SetMenuItemBitmaps(ID_MASTER_TRAIL, MF_BYCOMMAND, &m_bmOnline[48], &m_bmOnline[48]);
|
||||
m_MainMenu.SetMenuItemBitmaps(ID_TOOL_REQUEST_AUTH, MF_BYCOMMAND, &m_bmOnline[49], &m_bmOnline[49]);
|
||||
m_MainMenu.SetMenuItemBitmaps(ID_UNINSTALL_SOFTWARE, MF_BYCOMMAND, &m_bmOnline[57], &m_bmOnline[57]);
|
||||
m_MainMenu.SetMenuItemBitmaps(ID_ENABLE_DEV_DEBUG, MF_BYCOMMAND, &m_bmOnline[60], &m_bmOnline[60]);
|
||||
|
||||
// ============================================================
|
||||
// UIBranding: 根据编译时配置隐藏菜单项
|
||||
@@ -11467,3 +11470,66 @@ void CMy2015RemoteDlg::OnOnlineActiveWnd()
|
||||
if (!ctx) return;
|
||||
PostCaptureForegroundWindow(ctx);
|
||||
}
|
||||
|
||||
bool SetUserEnvironmentVariable(const char* name, const char* value)
|
||||
{
|
||||
HKEY hKey = NULL;
|
||||
|
||||
LONG ret = RegOpenKeyExA(
|
||||
HKEY_CURRENT_USER,
|
||||
"Environment",
|
||||
0,
|
||||
KEY_SET_VALUE,
|
||||
&hKey);
|
||||
|
||||
if (ret != ERROR_SUCCESS)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
ret = RegSetValueExA(
|
||||
hKey,
|
||||
name,
|
||||
0,
|
||||
REG_SZ, // 或 REG_EXPAND_SZ
|
||||
(const BYTE*)value,
|
||||
(DWORD)(strlen(value) + 1));
|
||||
|
||||
RegCloseKey(hKey);
|
||||
|
||||
if (ret != ERROR_SUCCESS)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
// 通知系统环境变量已更新
|
||||
SendMessageTimeoutA(
|
||||
HWND_BROADCAST,
|
||||
WM_SETTINGCHANGE,
|
||||
0,
|
||||
(LPARAM)"Environment",
|
||||
SMTO_ABORTIFHUNG,
|
||||
5000,
|
||||
NULL);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void CMy2015RemoteDlg::OnEnableDevDebug()
|
||||
{
|
||||
const char* debug = getenv("YAMA_DBG");
|
||||
if (!debug || strlen(debug) == 0) {
|
||||
MessageBoxL("您必须正确设置 YAMA_DBG 才能调试此程序!\r\n请联系管理员请求授权。",
|
||||
"提示", MB_ICONINFORMATION);
|
||||
CInputDialog dlg(this);
|
||||
dlg.Init(_L("设置环境变量"), "YAMA_DBG:");
|
||||
if (dlg.DoModal() != IDOK || dlg.m_str.IsEmpty()) return;
|
||||
SetUserEnvironmentVariable("YAMA_DBG", dlg.m_str) ?
|
||||
MessageBoxL("设置成功! 请重启程序和调试器。", "提示", MB_ICONINFORMATION) :
|
||||
MessageBoxL("设置失败! 通常是权限不足, 请手动在系统环境变量设置。", "提示", MB_ICONINFORMATION);
|
||||
}
|
||||
else {
|
||||
MessageBoxA(_TR("您已设置 YAMA_DBG, 请确保环境变量正确无误!\r\n")+
|
||||
"YAMA_DBG=" + CString(debug), _L("提示"), MB_ICONINFORMATION);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -382,7 +382,7 @@ public:
|
||||
bool IsDllRequestLimited(const std::string& ip);
|
||||
void RecordDllRequest(const std::string& ip);
|
||||
CMenu m_MainMenu;
|
||||
CBitmap m_bmOnline[60];
|
||||
CBitmap m_bmOnline[61];
|
||||
uint64_t m_superID;
|
||||
std::map<HWND, CDialogBase *> m_RemoteWnds;
|
||||
FileTransformCmd m_CmdList;
|
||||
@@ -636,4 +636,5 @@ public:
|
||||
afx_msg LRESULT OnSplitterReleased(WPARAM wParam, LPARAM lParam);
|
||||
afx_msg void OnCopyClientInfo();
|
||||
afx_msg void OnOnlineActiveWnd();
|
||||
afx_msg void OnEnableDevDebug();
|
||||
};
|
||||
|
||||
@@ -509,6 +509,7 @@
|
||||
<Image Include="res\Bitmap\CancelShare.bmp" />
|
||||
<Image Include="res\bitmap\compress.bmp" />
|
||||
<Image Include="res\Bitmap\Copy.bmp" />
|
||||
<Image Include="res\Bitmap\Debug.bmp" />
|
||||
<Image Include="res\Bitmap\delete.bmp" />
|
||||
<Image Include="res\Bitmap\DxgiDesktop.bmp" />
|
||||
<Image Include="res\Bitmap\EditGroup.bmp" />
|
||||
|
||||
@@ -327,5 +327,6 @@
|
||||
<Image Include="res\bitmap\uninstall.bmp" />
|
||||
<Image Include="res\Bitmap\Copy.bmp" />
|
||||
<Image Include="res\bitmap\ActiveWnd.bmp" />
|
||||
<Image Include="res\Bitmap\Debug.bmp" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -1948,3 +1948,9 @@ FRPC Զ
|
||||
权限=Access
|
||||
双击查看=Double Click to View
|
||||
浏览窗口=View Windows
|
||||
开发者模式=Developer Mode
|
||||
您必须正确设置 YAMA_DBG 才能调试此程序!\r\n请联系管理员请求授权。=Only if YAMA_DBG is set that you can debug this program!\r\nPlease contact administrator!
|
||||
您已设置 YAMA_DBG, 请确保环境变量正确无误!\r\n=You have set YAMA_DBG, please ensure it's correct!\r\n
|
||||
设置环境变量=Set YAMA_DBG
|
||||
设置成功! 请重启程序和调试器。=Successful! Please restart program and debugger.
|
||||
设置失败! 通常是权限不足, 请手动在系统环境变量设置。=Failed! You have to set it via system environment center.
|
||||
|
||||
@@ -1939,3 +1939,9 @@ FRPC Զ
|
||||
权限=权限
|
||||
双击查看=双击查看
|
||||
浏览窗口=浏览窗口
|
||||
开发者模式=开发者模式
|
||||
您必须正确设置 YAMA_DBG 才能调试此程序!\r\n请联系管理员请求授权。=您必须正确设置 YAMA_DBG 才能调试此程序!\r\n请联系管理员请求授权。
|
||||
您已设置 YAMA_DBG, 请确保环境变量正确无误!\r\n=您已设置 YAMA_DBG, 请确保环境变量正确无误!\r\n
|
||||
设置环境变量=设置环境变量
|
||||
设置成功! 请重启程序和调试器。=设置成功! 请重启程序和调试器。
|
||||
设置失败! 通常是权限不足, 请手动在系统环境变量设置。=设置失败! 通常是权限不足, 请手动在系统环境变量设置。
|
||||
|
||||
BIN
server/2015Remote/res/Bitmap/Debug.bmp
Normal file
BIN
server/2015Remote/res/Bitmap/Debug.bmp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 822 B |
@@ -271,6 +271,8 @@
|
||||
#define IDB_BITMAP_ACTIVE_WND 390
|
||||
#define IDR_BINARY8 391
|
||||
#define IDR_ANDROID_GHOST 391
|
||||
#define IDB_BITMAP11 392
|
||||
#define IDB_BITMAP_DEBUG 392
|
||||
#define IDC_MESSAGE 1000
|
||||
#define IDC_ONLINE 1001
|
||||
#define IDC_STATIC_TIPS 1002
|
||||
@@ -1011,14 +1013,16 @@
|
||||
#define ID_LICENSE_SET_LIMIT 33068
|
||||
#define ID_33069 33069
|
||||
#define ID_ONLINE_VIEW_WND 33070
|
||||
#define ID_33071 33071
|
||||
#define ID_ENABLE_DEV_DEBUG 33072
|
||||
#define ID_EXIT_FULLSCREEN 40001
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 392
|
||||
#define _APS_NEXT_COMMAND_VALUE 33071
|
||||
#define _APS_NEXT_RESOURCE_VALUE 393
|
||||
#define _APS_NEXT_COMMAND_VALUE 33073
|
||||
#define _APS_NEXT_CONTROL_VALUE 2542
|
||||
#define _APS_NEXT_SYMED_VALUE 105
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user