在Windows 10中使用choice.exe的问题

时间:2017-02-09 04:14:17

标签: batch-file plsql windows-10 oracleforms

我通过批处理文件集成了两个软件,一切都在Windows 7中正常工作但我不确定为什么在窗口10中我的代码无法正常工作,我的暂停是由于选择但它在system32文件夹中可用。< / p>

我的Windows是10个企业,我的Windows 7是专业的。

我附加了部分代码和输出。

*我使用的是oracle form 6i和数据库9i。 **代码在windows xp和7中正常工作。

请帮我识别我的代码在Windows 10中出了什么问题。

enter image description here running code in window 7

running code in window 10

enter image description here

代码的一部分[此代码在plsql后端生成并发送到oracle表单然后写入批处理文件然后执行:

  LV_SCRIPT :=  LV_SCRIPT || 'pause'|| crlf;

  LV_SCRIPT :=  LV_SCRIPT || 'for /f "tokens=*" %%i in ('||'''findstr /c:%Loc% %TEMP%\GET_COPY_PVCS.txt'||''') do ('||crlf;
  LV_SCRIPT :=  LV_SCRIPT || '@echo . . .&& @echo. '|| crlf;
  LV_SCRIPT :=  LV_SCRIPT || '@echo %%i '|| crlf;
  LV_SCRIPT :=  LV_SCRIPT || '@echo.'|| crlf;
  LV_SCRIPT :=  LV_SCRIPT || '@echo Option 1: Checkin object'|| crlf;
  LV_SCRIPT :=  LV_SCRIPT || '@echo Option 2: Update Version Label for PVCS copy' || crlf;
  LV_SCRIPT :=  LV_SCRIPT || '@echo.'|| crlf;


  --LV_SCRIPT :=    LV_SCRIPT || '@CHOICE /C 12N /M "Select a for option 1 and option 2 or N for No:"' || crlf;

  LV_SCRIPT :=  LV_SCRIPT || 'if "%version%" == "6" @CHOICE /C 12N /M "Select a for option 1 and option 2 or N for No:"' || crlf;---pvcs2
  LV_SCRIPT :=  LV_SCRIPT || 'if "%version%" == "5" @CHOICE /C12N "Select a for option 1 and option 2 or N for No:"' || crlf;---pvcs2

  LV_SCRIPT :=  LV_SCRIPT || 'if !errorlevel! equ 1 call :Checkin "%%i"' || crlf;
  LV_SCRIPT :=  LV_SCRIPT || 'if !errorlevel! equ 2 call :VersionLabel "%%i"'|| crlf;
  LV_SCRIPT :=  LV_SCRIPT || ')' || crlf;
  LV_SCRIPT :=  LV_SCRIPT || '@endlocal' || crlf;
  LV_SCRIPT :=  LV_SCRIPT || 'pause' || crlf;
  LV_SCRIPT :=  LV_SCRIPT || 'exit' || crlf;

Oracle表单代码:

lv_userfile:= lv_userfile ||'GET_COPY_PVCS.bat';
                        LV_CONTENT := bpg_gen.BFN_GET_COPY_PVCS(:CMMT_FIX_MASTER.V_FIX_LOC,lv_userfile,LV_LOCATION,:CMMT_OBJECTS.V_OBJECT_NAME,:CMMT_OBJECTS.V_TYPE,:CMMT_FIX_MASTER.V_CUSTOMER);--PV_FIX_LOC VARCHAR2,PV_BatchLocation VARCHAR2,PV_PVCSLOC VARCHAR2,PV_OBJECTNAME VARCHAR2

                        out_file := text_IO.fopen(lv_userfile,'w');

                        text_IO.put (out_file,LV_CONTENT);
                        text_IO.new_line(out_file);

                        text_IO.fclose(out_file);

                        Host('cmd /c start '||lv_userfile);

0 个答案:

没有答案