我有多个数据库,我在 Windows(不是命令窗口)中使用 SQL*Plus 连接到这些数据库。
我一直在寻找一种方法来更改窗口的标题,以便我可以从任务栏中区分一个实例与另一个实例。是的,我知道我可以更改提示,但是我必须在实例之间切换并阅读提示,直到找到正确的提示。
这甚至可能吗?如果是这样怎么办?
如您所知,对于 sqlplus.exe,您可以使用 glogin.sql(在您的 Oracle 客户端的 sqlplus 目录中)在会话开始时运行 sqlplus 命令。
您还可以尝试使用HOST
sqlplus 中的命令在 shell 上执行命令:
HOST title [my db name]
您可以尝试将此调用放入 glogin.sql (以及您的自定义提示符)。
编辑:
对于 sqlplusw,我在这里看到了一个“解决方案”,它建议为您希望连接的每个服务器创建快捷方式,并且 windows 将使用快捷方式的标题作为窗口的标题。
[DllImport("user32.dll", SetLastError =true, CharSet =CharSet.Auto)]
static extern IntPtr SetWindowText(IntPtr hwnd, String lpString);
Process process = new Process();
process.StartInfo.FileName = "sqlplusw";
process.Start();
process.WaitForInputIdle();
SetWindowText(process.MainWindowHandle, "PRODUCTION - BE CAREFUL!!");
我能够拼凑出一个可以满足我需求的包装器。现在让它更通用....