我有一个希望很快的问题:是否有可能延迟执行ShellExecute一点?
我有一个autoupdater应用程序.在下载所有必需的文件等之后,它会将当前文件重命名为*.OLD,将新文件重命名为之前的文件.很简单.但后来我需要删除那些.OLD文件.这个'清理'程序在MainForm.OnActivate上执行(检查它是否是第一个激活proc).但这显然发生得太快(我从DeleteFile得到False).这是程序:
procedure TUpdateForm.OKBtnClick(Sender: TObject);
const SHELL = 'ping 127.0.0.1 -n 2';
begin
ShellExecute(0,'open',pchar(SHELL+#13+Application.ExeName),nil,nil,SW_SHOWNORMAL);
Application.Terminate;
end;
Run Code Online (Sandbox Code Playgroud)
此过程应该重新启动应用程序.我确定删除问题是由第二个应用程序的快速启动引起的,因为如果我自己重新启动它,给它一点时间,文件会被正常删除.
tl; dr版本:我需要调用ShellExecute()等待(0.1秒左右)然后THEN执行命令.
注意
我尝试使用-ping命令尝试延迟它,但它没有用.
非常感谢你提前
编辑:改述
我需要这个发生|| 第一个应用关闭; 等待100毫秒; 第二个应用程序打开 ||.我需要先调用ShellExecute,然后等待调用应用程序完全关闭,然后执行shell(即打开第二个应用程序)
我需要将我的代码提交给.pdf文件中的竞赛.如果在实际工作室中突出显示语法,那将会很好并且更容易阅读.我真的不想自己突出显示它,一行一行,所以有没有办法在.rtf中导出Delphi源代码?
谢谢
使用 Mockito 设置模拟时出现异常:
java.lang.NullPointerException: Attempt to invoke virtual method 'double java.lang.Double.doubleValue()' on a null object reference
Run Code Online (Sandbox Code Playgroud)
设置代码是这样的:
Mockito
.when(aMock.method(any(), any()))
.thenReturn(something);
Run Code Online (Sandbox Code Playgroud)
哪里method需要两个double参数。
我正面临 Symfony Messenger 组件的奇怪行为。我根据文档进行了设置,并按照此处的messenger:stop-workers说明在每次部署时发出信号。但是,我们的系统中出现了一个错误,我可以追溯到该错误是因为 Messenger 工作人员正在使用旧版本的代码。
经过更多调查,这就是我们的设置中发生的情况:
app/console messenger:consume --env=prod -vv async看看会发生什么app/console messenger:stop-workers --env=prod主管管理的工人被限制为 1 小时的处理时间,之后他们将被停止并重新启动。我可以看到supervisord.log这很好用。每小时都有关于进程停止和启动的日志条目。但是没有任何关于他们停止messenger:stop-workers命令的事情。
我正在寻找关于为什么会发生这种情况的想法。我阅读了工作人员的实现,关闭信号是通过缓存发送的,但我没有发现我们的配置有任何问题。
我正在寻找一种从命令行快速运行/重新启动作业/Pod 并覆盖要在创建的容器中执行的命令的方法。
对于上下文,我有一个 Kubernetes 作业,它作为部署过程的一部分执行。有时该作业会崩溃,我需要在作业创建的容器内运行某些命令来调试和修复问题(后续作业会成功)。
到目前为止我这样做的方法是:
command:字段更改为tail -f /dev/null(以便容器保持活动状态)kubectl apply -f job.yaml && kubectl get all && kubectl exec -ti pod/foobar bashkubectl delete job/foobar当我完成时这是非常乏味的。我正在寻找一种方法来做类似以下的事情
kubectl restart job/foobar --command "tail -f /dev/null"
# or even better
kubectl run job/foobar --exec --interactive bash
Run Code Online (Sandbox Code Playgroud)
我无法使用以下run命令创建 Pod:
kubectl restart job/foobar --command "tail -f /dev/null"
# or even better
kubectl run job/foobar --exec --interactive bash
Run Code Online (Sandbox Code Playgroud)
因为我尝试重新启动的作业具有 …
我想知道如何声明一个具有一些固定值的记录.我需要使用这种模式发送数据:Byte($FF)-Byte(0..250)-Byte(0..250).我正在使用record它,我想让它的第一个值保持不变,这样就不会搞砸了.如:
TPacket = record
InitByte: byte; // =255, constant
FirstVal,
SecondVal: byte;
end;
Run Code Online (Sandbox Code Playgroud) 我真的无法弄清楚为什么,但我只能让ellipsize工作maxLines=2更多.我正在显示几个描述的单词,然后是一个没有空格的长字符串.
这就是TextView的样子:
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center"
android:textColor="#757575"
android:text="@string/gcm_not_registered"
android:maxLines="1"
android:ellipsize="end"
android:id="@+id/login_gcmRegistrationTextView"/>
Run Code Online (Sandbox Code Playgroud)
然后我以编程方式设置文本,但根据maxLines限制,我得到两个不同的结果:

唯一改变的是maxLines,为什么第一张图片中的线条也没有填满?
我只是想知道为什么我应该在类中使用属性而不是"普通"变量(类属性?).我的意思是:
TSampleClass = class
public
SomeInfo: integer;
end;
TPropertyClass = class
private
fSomeInfo: integer;
public
property SomeInfo: integer read fSomeInfo write fSomeInfo;
end;
Run Code Online (Sandbox Code Playgroud)
有什么大不同?我知道我可以分别定义获取或保存属性的getter和setter方法,但即使没有变量是"属性",这也是可能的.
我试着搜索为什么要使用它,但没有任何有用的东西出现,所以我在这里问.
谢谢
我只是想问一个简单的问题 - 我有一个派生自TLabel的类如下:
TMyLabel = class (TLabel)
...
constructor Create(AOwner: TComponent); override;
end;
constructor TMyLabel.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
{ some code }
end;
Run Code Online (Sandbox Code Playgroud)
现在,Delphi允许我使用和不使用覆盖来编译两个版本.你能解释一下这些差异是什么吗?除了在被覆盖Create()时无法请求我自己的参数.谢谢
编辑:我的意思是 - a virtual和非虚拟基础后代构造函数之间的区别是什么?我总是可以调用继承的构造函数inherited Create(),那有什么意义呢?
添加一行后,我需要将RichEdit滚动到最后.我有一个单独的RichEdit形式,我不想得到任何关注.我经常尝试建议解决方案:
RichEdit.Lines.Add(someText);
RichEdit.SelStart:=RichEdit.GetTextLen;
SendMessage(RichEdit.handle, EM_SCROLLCARET, 0, 0);
Run Code Online (Sandbox Code Playgroud)
但这对我不起作用.但是,当我在调用SendMessage使用之前关注RichEdit时,RichEdit.SetFocus;它可以正常工作.然而,这破坏了我对应用程序的其他需求.
我正在使用XE2.谢谢
delphi ×6
oop ×2
android ×1
delay ×1
export ×1
java ×1
kubectl ×1
kubernetes ×1
mockito ×1
properties ×1
richedit ×1
rtf ×1
shellexecute ×1
symfony ×1
textview ×1