我有一个Web服务器,用于保存编号为Web应用程序的日志文件.这个文件名示例如下:
dbsclog01s001.log
dbsclog01s002.log
dbsclog01s003.log
Run Code Online (Sandbox Code Playgroud)
最后3位是计数器,它们可以达到100的时间.
我经常打开一个Web浏览器,浏览到如下文件:
http://someaddress.com/logs/dbsclog01s001.log
Run Code Online (Sandbox Code Playgroud)
并保存文件.当你获得50个日志时,这当然会有点烦人.我试图想出一个使用wget和传递的BASH脚本
http://someaddress.com/logs/dbsclog01s*.log
Run Code Online (Sandbox Code Playgroud)
但我的剧本有问题.无论如何,任何人都有关于如何做到这一点的样本?
谢谢!
有没有办法在Javascript上创建动态字符串数组?我的意思是,在页面上,用户可以输入一个数字或30个数字,然后他/她按下OK按钮,下一页按照输入的顺序显示数组,一次一个元素.
代码表示赞赏.
我需要使用Xcode在Mac上的屏幕上显示鼠标位置.我有一些代码应该这样做,但我总是将x和y返回为0:
void queryPointer()
{
NSPoint mouseLoc;
mouseLoc = [NSEvent mouseLocation]; //get current mouse position
NSLog(@"Mouse location:");
NSLog(@"x = %d", mouseLoc.x);
NSLog(@"y = %d", mouseLoc.y);
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?你如何获得屏幕上的当前位置?此外,最终该位置(保存在NSPoint中)需要复制到CGPoint以与另一个函数一起使用,因此我需要将其作为x,y坐标或转换它.
有没有办法在两个进程之间共享内存?
第二个过程从注入中获取信息,因为它是一个遗留程序,它不再受支持.
我的想法是在那里注入一些代码,在我传递给注入程序的结构中将地址(或其他)传递给我需要运行的数据所在的共享内存.一旦我得到数据,我将在注入的线程中填充我自己的变量.
这可能吗?怎么样?
代码表示赞赏.
编辑:
我认为现在还不清楚所以我会澄清一下.我知道如何注射.我已经这样做了.这里的问题是将动态数据传递给注入.
我正在尝试使用以下代码按下我的其他应用程序上的按钮:
HWND ButtonHandle;
if( (wnd = FindWindow(0, "Do you want to save?")) )
{
ButtonHandle = FindWindowEx(wnd, 0, "SaveButton", "&Save");
SendMessage(wnd, WM_COMMAND, MAKEWORD(GetDlgCtrlID(ButtonHandle), BN_CLICKED ), (LPARAM)ButtonHandle);
}
Run Code Online (Sandbox Code Playgroud)
它不起作用.我尝试将不同的句柄传递给MAKEWORD并更改WPARM和LPARAM,但没有.
有关如何单击另一个应用程序窗口上的按钮的任何想法?
代码表示赞赏.谢谢.
编辑:它似乎没有工作权限的原因.我发送了一个PostMessage(),结果是GetLastError()= 5(或拒绝访问)时出错.有任何想法吗?
EDIT2我不是故意粗鲁,但请取悦,我已经搜索了所有的API,包括获取和设置按钮的区域,然后发送按钮和按钮,获取控件ID,获取类ID和还有更多.我之所以问这个问题的原因是因为我已经在互联网上用尽了我的搜索.如果您知道答案请发布邮件代码,不要建议API,就是这样,告诉我该API如何解决问题.这并不难.谢谢.
编辑3:当赏金结束时,问题的答案自动被选中.这个问题仍然没有答案.
我试图找到一种(有点)简单的方法来在窗口上截取屏幕截图并将生成的HBITMAP保存为JPEG.这里棘手的部分是,因为代码在CI中不能使用GDI +,并且由于代码是更大程序的模块,我不能使用外部库(如libjpeg).
此代码截取屏幕截图并返回HBITMAP.将该位图保存到文件中很容易.问题是位图是2或3mb.
HDC hDCMem = CreateCompatibleDC(NULL);
HBITMAP hBmp;
RECT rect;
HDC hDC;
HGDIOBJ hOld;
GetWindowRect(hWnd, & rect);
hBmp = NULL;
{
hDC = GetDC(hWnd);
hBmp = CreateCompatibleBitmap(hDC, rect.right - rect.left, rect.bottom - rect.top);
ReleaseDC(hWnd, hDC);
}
hOld = SelectObject(hDCMem, hBmp);
SendMessage(hWnd, WM_PRINT, (WPARAM) hDCMem, PRF_CHILDREN | PRF_CLIENT | PRF_ERASEBKGND | PRF_NONCLIENT | PRF_OWNED);
SelectObject(hDCMem, hOld);
DeleteObject(hDCMem);
return hBmp;
Run Code Online (Sandbox Code Playgroud)
关于如何做到这一点的任何想法?非常感谢,任何帮助表示赞赏
编辑:因为我们走向GDI +的方向我想我会发布代码iv C++,可以截取屏幕截图并使用GDI +将其转换为JPEG.如果有人知道如何使用FLAT GDI +实现这一目标我会很感激帮助.码:
#include <windows.h>
#include <stdio.h>
#include <gdiplus.h>
using namespace Gdiplus;
int GetEncoderClsid(WCHAR *format, CLSID *pClsid) …
Run Code Online (Sandbox Code Playgroud) 以前曾经问过,但我在代码中找不到明确的答案.
我打开一个进程,ProcessA(带有PID 1234).此过程打开子进程ProcessAB(PID 5678).在我完成后,我终止了ProcessA,但我仍然有ProcessAB的挥之不去.
如何终止整个进程树?我的意思是,我如何确保如果我终止我打开的流程,我也会终止所有相关流程?
谢谢
代码表示赞赏.
我不知道这个问题是否可以在这里得到解答,但我希望它会.我在Delphi 7中编写了一个简单的文本编辑器,它是我在Windows下编写C代码的主要IDE.我在VM中运行Windows,我需要一些简单的东西.在任何情况下,它都使用TpageControl,只要您打开或创建新文件,它就会获得一个新选项卡.很标准.现在,Delphi下的TPageControl没有平面属性.
不,我不是指将标签样式设置为tsButtons或tsFlatButtons
边框不能设置为"none",当您将文本编辑器添加到选项卡控件时,它看起来非常糟糕.
有没有办法让TpageControl保持平坦?
编辑:
在支持平板的开源页面控件上我发现了:
procedure TCustomTabExtControl.WndProc(var Message: TMessage);
begin
if(Message.Msg=TCM_ADJUSTRECT) and (FFlat) then
begin
Inherited WndProc(Message);
Case TAbPosition of
tpTop : begin
PRect(Message.LParam)^.Left:=0;
PRect(Message.LParam)^.Right:=ClientWidth;
PRect(Message.LParam)^.Top:=PRect(Message.LParam)^.Top-4;
PRect(Message.LParam)^.Bottom:=ClientHeight;
end;
tpLeft : begin
PRect(Message.LParam)^.Top:=0;
PRect(Message.LParam)^.Right:=ClientWidth;
PRect(Message.LParam)^.Left:=PRect(Message.LParam)^.Left-4;
PRect(Message.LParam)^.Bottom:=ClientHeight;
end;
tpBottom : begin
PRect(Message.LParam)^.Left:=0;
PRect(Message.LParam)^.Right:=ClientWidth;
PRect(Message.LParam)^.Bottom:=PRect(Message.LParam)^.Bottom-4;
PRect(Message.LParam)^.Top:=0;
end;
tpRight : begin
PRect(Message.LParam)^.Top:=0;
PRect(Message.LParam)^.Left:=0;
PRect(Message.LParam)^.Right:=PRect(Message.LParam)^.Right-4;
PRect(Message.LParam)^.Bottom:=ClientHeight;
end;
end;
end else Inherited WndProc(Message);
end;
Run Code Online (Sandbox Code Playgroud)
问题是,当我在主应用程序上尝试类似的东西时,它将无法工作.它甚至不会编译.
有没有办法将文本包装在Delphi的TPanel.Caption中(在我的案例中是Delphi 6)?
谢谢!
我有一个程序,必须在完成之前执行某些任务.问题是有时程序崩溃时会出现异常(如无法访问数据库等).现在,有没有办法检测异常终止并在它死之前执行一些代码?
谢谢.
代码表示赞赏.