我在Stack-Overflow中发现以下question与我的相关,但解决方案对我不起作用。
我想编译一个AHK脚本,该脚本在Notepad ++中打开一个文件并在特定行插入代码。我有AHK脚本使用普通字符串,但它不适用于我正在尝试使用的代码。
我想使用notepad ++
在文件中插入以下代码<Macro name="Remove Navis folders" Ctrl="no" Alt="no" Shift="no" Key="0">
<Action type="0" message="2318" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" /></Macro>"
这是我的剧本
obj := {"key":
(
<Macro name="Remove Navis folders" Ctrl="no" Alt="no" Shift="no" Key="0">
<Action type="0" message="2318" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" /></Macro>
)}
Run, notepad++.exe %A_AppData%\Notepad++\shortcuts.xml
Sleep, 200
Send, ^{Home}
Send, ^f
Sleep, 200
Sendraw, <Macros>
Send, {ENTER}{ESC}{Right}
Sleep, 200
Send, {ENTER}{Tab}
Sleep, 200
Send, % obj["key"]
答案 0 :(得分:1)
您必须将整个文本放入“并且转义”,这是代码的一部分,否则会出错。
obj := {"key":
(
"<Macro name=""Remove Navis folders"" Ctrl=""no"" Alt=""no"" Shift=""no"" Key=""0"">
<Action type=""0"" message=""2318"" wParam=""0"" lParam=""0"" sParam="""" />
<Action type=""3"" message=""1700"" wParam=""0"" lParam=""0"" sParam="""" /></Macro>"""
)}
MsgBox % obj["key"]