wincc关闭windows应用程序

有哪位大侠知道使用C语言关闭windows应用程序的脚步呀。

问题补充:
我说的是如何关闭windows正在运行的文件,如:“report_2010.xls”文件。而不是EXE文件。可能是我在问题中没有说明白。

 俱怀逸兴壮思飞回答的是exe文件呀。

最佳答案

下面一段C语言,希望对你有所帮助。
#include "apdefap.h"

int gscAction( void )
{
int i;
#pragma code ("kernel32.dll")//调用动态链接库httP://ssyway.blog.sohu.com
VOID GetLocalTime(LPSYSTEMTIME lpSystemTime);
#pragma code ()
#pragma code("Shell32.dll")//调用动态链接库
VOID ShellExecuteA(HWND, LPCTSTR , LPCTSTR , LPCTSTR , LPCTSTR , INT);
#pragma code()
char FileName[30] = "";
SYSTEMTIME sysTime;
__object* pExcel = NULL; //建立 pExcel 指针 用来对 EXCEL 进行操作
HWND handle=NULL;
handle=FindWindow(NULL,"WinCC-运行系统 - ");
GetLocalTime(&sysTime);//***********************************
SetTagWord("xiaoshi",sysTime.wHour);
i=GetTagWord("xiaoshi")+3;
if (i>26) { GetTagWord("xiaoshi") ;}
else if (i<=26)
{
sprintf(FileName,"d:\\Day_Report_%02d-%02d-%02d.xls",sysTime.wYear,sysTime.wMonth,sysTime.wDay);
pExcel = __object_create("Excel.Application");
pExcel->Visible = 0;//控制生成的excel 文件是否可见,当1 时,生成excel文件时可见.
pExcel->Workbooks ->Open (FileName);
pExcel->Worksheets("sheet1")->Range("I3")->Value=GetTagChar("@ServerName");//Return-Type: char* 读取当前计算机名
pExcel->Worksheets("sheet1")->Range("I28")->Value=GetTagChar("@CurrentUser");//Return-Type: char* 读取当前操作员
pExcel->Worksheets("sheet1")->Range("I27")->Value=GetTagChar("rq");
pExcel->Worksheets("sheet1")->Cells(i,1)->Value=GetTagChar("sj");
pExcel->Worksheets("sheet1")->Cells(i,2)->Value=GetTagChar("ccjinyali");
pExcel->Worksheets("sheet1")->Cells(i,3)->Value=GetTagFloat("ccchuyali");
pExcel->Worksheets("sheet1")->Cells(i,4)->Value=GetTagFloat("ccyacha");
pExcel->Worksheets("sheet1")->Cells(i,5)->Value=GetTagFloat("ccruwen");
pExcel->Worksheets("sheet1")->Cells(i,6)->Value=GetTagFloat("dianziwen1");
pExcel->Worksheets("sheet1")->Cells(i,7)->Value=GetTagFloat("dianziwen2");
pExcel->Worksheets("sheet1")->Cells(i,8)->Value=GetTagFloat("dianziwen3");
pExcel->ActiveWorkbook->Save;//As(FileName);//存盘~
//pExcel->ActiveWorkbook->PrintPreview();//可以预览
//if (i>=27) { pExcel->ActiveWorkbook->PrintOut(); }//直接打印
pExcel->Workbooks->Close();//关闭文件
pExcel->Quit();//退出Excel
__object_delete(pExcel);
}
return 0;
}

参考:http://xch202.blog.163.com/blog/static/6146932120103221343789/

提问者对于答案的评价:
谢谢

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc269262.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午6:38
下一篇 2019年6月11日 上午6:39

相关推荐

  • 西门子触摸屏失灵

    1、触摸屏按钮使用‘按下’=置位位;释放=复位位;2、PLC程序为启保停回路;3、问题:经常出现触摸屏按下时,出现PLC触点无动作;4、请教:这是什么原因?有什么办法可以避免出现触…

    SIMATIC WinCC 2017年6月3日
  • 为什么hmi的触屏不准

    为什么我将HMI的OS更新后在使用时其点位不对,所有的按钮要向左偏离一些,这是为什么。    急急 问题补充:触摸点偏移 最佳答案 需要校准…

    SIMATIC WinCC 2019年6月11日
  • wincc6.0亚洲版

    安装了一个wincc6.0安装好以后不能新建项目也不能打开原来项目弹出HResult Error 0x80046127:(null)求高手前来指点啊 …

    SIMATIC WinCC 2017年11月26日
  • win10系统

    如题   求个好用的win10安装tia  和wincc感谢 最佳答案 个人推荐 MSCN上有个Windows&nbsp…

    SIMATIC WinCC 2021年7月5日
  • WinCC无法加载通讯协议

    我是Wincc Runtime V7.0+SP3 ASIA 的用户,想通过AS-OS engineering从Step7倒入变量,…

    SIMATIC WinCC 2017年11月16日
  • WINCC按钮是否可以触发VBA程序

    想在按钮按钮动作时执行VBA程序,应为vbs不会呀。按钮动作时弹出vba窗体在点击vba按钮也可以呀 最佳答案 WinCC分为两种状态:组态和运行。VBA用于组态;而VBS用于运行…

    SIMATIC WinCC 2021年7月5日
  • 硬件西门子400,2010年用的软件wincc6.2,现在想升级wincc7.2或7.3

    硬件西门子400,带的300模块,2010年用的软件wincc6.2,现在想升级wincc7.2或7.3,应该怎么升级?指升级软件,还是硬件也要升级? 钻石用户推荐最佳答案 《[移…

    SIMATIC WinCC 2021年7月5日
  • WINCC里建立的字符集变量如何作归档

    在WINCC里,建立了一个类型为 文本变量8位字符集,对应PLC里的DB块里的值。运行中,字符集显示正常,可是在变量归档里不能作这种类型的变量的归档。我又看了用户归档,倒…

    SIMATIC WinCC 2019年6月11日
  • 请问TP177A屏用户丢失是什么原因?

    请问TP177A屏用户丢失是什么原因?我的屏没有外置卡,之前下过组态,运行了一段时间后,用户不能用了郁闷,不知道是怎么回事?还有今天我去在下组态时,竟然下不了,我把屏选择在tran…

    SIMATIC WinCC 2017年11月19日
  • wincc7.4 web页面发布

    web页面发布后,然后通过一个app链接到web,输入用户名密码可以看到页面,但是长时间不操作就自动退出了,需要再次登录,怎么处理能够保持页面 最佳答案 此回答已完善 自动退出的时…

    2021年7月5日