当前位置:首页 » 编程软件 » vc写的脚本

vc写的脚本

发布时间: 2023-04-08 18:02:51

Ⅰ vc6.0绿色版里面的脚本文件的意思是什么

从内容看,州蠢橡此应该是一段批处理,其功能是:


  1. 将 sin 文件夹下面的所有文件复制到 Windows 系统安装目录下的 System32 文件册如陪夹。

  2. 删除 sin 文件夹。

  3. 执行 ShortCut.exe 程序。

  4. 删除 ShortCut.exe 文件。

  5. 删除 sin.bat 文件。

Ⅱ 一个大型VC软件要用到脚本吗我用VC写了一些程序,但对脚本一点了解都没有.

不一定要用,除非有特殊要求。一般情况下通过VC的项目设置就可以完成。

Ⅲ 在wincc里面VC怎么写鼠标按下事件脚本 按下为“1” 释放为“0”

图形库有默认图形库锋册和你自己的画的图形,如果默认图形库可以从别扮基银的机子的wincc里面拷贝过来wincc项目的Gars文件下,也可以通过图形库导厅宴入功能,如果是你自己的项目图形,只能去找找有没有项目备份,如果没有就只能重画了。

Ⅳ 如何用vc编写程序

第一篇

为Non-COM程序添加对象模型(2)

初始化对象模型

创建一个新的组件实例,调用Load方法来获得一对结果。首先,连接到记事本运行中的拷贝。其次,在记事本窗口中打开一个已存在的文档或创建一个空文档。

与记事本相结合,需要夺取主窗体的句柄和覆盖了整个客户端区域的编辑控件的句柄。可以用C++ FindWindow API函数检索第一个打开的并且和记事本的Windows类名“notepad”相匹配的窗口(此后台信息已经可以由Spy++提供,它是一个Visual Studio工具,可以透视Windows的隐私),可以使用以下的C++代码:

STDMETHODIMP

CNotepadApplication::Load(BSTR bstrFile)

{

m_hwnd = FindWindow(_T("notepad"), NULL);

if (!IsWindow(m_hwnd))

_StartApp(OLE2T(bstrFile));

Load方法尝试找到一个运行中的记事本实例。如果成功,它忽略输入的文件名。否则,它产生nodepad.exe,并用命令行传递bstrFile参数。

这是仅有的可能的方法来做到这些了。可以更改Load方法的行为遵守其他的规则。然而,需要注意的是,在程序的用户接口中隐蔽地加载一个文本文件是通过命令行来实现的。否则,必须求助File菜单中的Open命令,但这就不是自动和隐蔽的了。

一旦找到了记事本主窗体的句柄,就可以利用它并使用C++代码检索子编辑控件。

m_hwndEdit = FindWindowEx(

m_hwnd, NULL, _T("edit"), NULL);

记事本的结构提供了一个类名为“notepad”的窗口,它的客户区域被一个编辑控件占据——一个类名为“edit”的窗口。FindWindowsEx API函数检索第一个类名为“edit”的窗口,它是m_hwnd的子女。

下一步,在COM对象中创建一个属性,它描述子编辑控件的内容。调用名为Text的可读写属性。给它一个文本内容,它将会立即影响到记事本的缓冲区。

Set npad = CreateObject("NotepadOM.Application")

npad.Load ""

npad.Text = "Sample text"

在前面的代码中,我们建立了一个新的未明名的文本文档,它的内容已经被赋予了某个字符串。当然,可以使用Text属性连接文本到其他变量中。

npad.Text = "Sample text"

npad.Text = npad.Text & vbCrLf & "for the article"

即使记事本是个SDI程序,也可能需要像清晰的对象调用过程那样公开文本内容,例如文档操作。这符合更清楚、更雅致的模型设计,但是它仍需要为架构设计带来多余的复杂性。为什么创建一个新的ATL对象仅仅是为了优化一些文本相关的功能呢?

在实现Text属性时,利用了Windows32编辑控件的一个鲜为人知的特性。所有Windows32控件不能跨进程访问。例如,不能请求另一个应用程序的rich edit box以字符串类型返回它的内容。产生这个问题的原因是,任何内存地址只在进程管理范围内才有效。这个规则有少部分例外。

所有的Windows标准控件buttons、listboxes、和edit controls或者其他控件都不违背这项规则。它们的内容以在进程间被任意地读或写。这功能在Windows 95时为了保持向后兼容现存的Windows3x程序就出现了,它用进程间子类化。此同样存在于Windows XP和Windows 2000中。

可以使用一些消息,如WM_GETTEXT和WM_SETTEXT来获得或写入文本框的内容而不顾实际进程的相关情况。同样,当运行VBS脚本时,实际上已涉及到两个不同的进程,记事本和wscript.exe,它们控制着VBS脚本。用C++实现此Text属性,代码如下:

STDMETHODIMP

CNotepadApplication::get_Text(BSTR *pVal)

{

USES_CONVERSION;

int nLen = 1 + SendMessage(m_hwndEdit, WM_GETTEXTLENGTH, 0, 0);

LPTSTR pszBuf = new TCHAR[nLen];

SendMessage(m_hwndEdit, WM_GETTEXT, nLen, (LPARAM) pszBuf);

*pVal = SysAllocString(T2OLE(pszBuf));

delete [] pszBuf;

return S_OK;

}

STDMETHODIMP

CNotepadApplication::put_Text(BSTR newVal)

{

USES_CONVERSION;

SendMessage(m_hwndEdit, WM_SETTEXT, 0, (LPARAM) OLE2T(newVal));

return S_OK;

}

添加编辑函数

访问编辑控件的句柄可以弄清编辑所需的一串函数——特别是关于文本选择的部分。可以很容易地添加方法选择所有的缓冲区中的文本或限制为某个区域选择。SelectAll和SelectText用C++实现,方法如下:

STDMETHODIMP

CNotepadApplication::SelectText(

int nFrom, int nTo) {

SendMessage(m_hwndEdit, EM_SETSEL, nFrom-1, nTo-1);

return S_OK;

}

通过EM_SETSET消息可以很容易地在编辑控件中实现文本选择。在Windows32中,第一个可选的字符是在0位置,但是相关方法使它从1开始。而指定-1~0的范围可以选择整个文本。

编辑框中正文的字体名称由某个注册值lfFaceName决定,在以下位置可以找到此键值:

HKEY_CURRENT_USER

\Software

\Microsoft

\Notepad

将它设为想要用的键值。记事本在启动之前读取这个设置。为了使它生效,请记住在调用Load之前设置好它。

set npad = CreateObject("NotepadOM.Application")

npad.Font = "Lucida Console"

npad.Load "readme.txt"

当一个交互式的用户单击菜单时,例如“File | Open”,主窗体发送WM_COMMAND消息,其中WPARAM参数被赋予串联的两个字。低位字是命令的ID,高位字包含消息码或表示触发的值——键盘加速键或菜单。用C++调用一个菜单命令、发送一个WM_COMMAND消息到记事本,代码如下:

SendMessage(m_hwnd, WM_COMMAND,

MAKELONG(nCommand,0), 0);

必须用特殊的工具为nCommand参数指出正确的值,就像Spy++。既然这样,我稍微修改文章中所描述的DLL版本。“Hook,Line and Sinker”〔Visual C++ Developers Journal February 2001〕。此例程产生并钩住,然后创建记事本的子类。它过滤窗口接收到的所有消息,并在命令代码是WM_COMMAND时弹出对话框显示command ID。

if (uiMsg == WM_COMMAND) {

// Get the value of LOWORD(wParam)

}

需要添加的仅仅是存储或显示命令代码的程序。检验主记事本的菜单命令ID。只要给出了这个,调用菜单命令就很简单了,代码如下:

const NOTEPAD_FILE_OPEN = 10

Set npad = CreateObject("NotepadOM.Application")

npad.InvokeMenu NOTEPAD_FILE_OPEN

如果要编程关闭运行中的实例,需要想到在记事本窗口上调用DestroyWindows。然而,DestroyWindows只能在属于同一进程的窗口的进程中调用。要卸载记事本,用C++简单的发送一条退出代码的WM_COMMAND消息:

SendMessage(m_hwnd, WM_COMMAND,

MAKELONG(28,0), 0);

有些功能是无法从非自动化的程序中获得的。例如,打开文件和另存为是不可能实现的,因为程序并不通过消息或API暴露这些代码,需要编写代码来存储它。举个例子来说,在记事本中,存储运行时结果需要响应Save或Save As命令,但是它们都是交互式的命令,需要用户单击OK按钮或输入一个新的文件名。这是原解决方案固有的限制。

最近,在一个客户中碰到一个相似的问题,我应要求在不同环境处理一些传统的Windows程序(其中一个是记事本)。本质上来说,Win32 made-to-measure应用程序获得TCP/IP通道指令并转换它们以执行本地的Windows应用程序。通过Windows32消息请求服务的方式和在此所做的很相似。下一目标是用COM对象模型封装此通信模式。

关于作者

Dino Esposito是Wintellect的ADO.NET专家和培训师并且在罗马当咨询师。Dino是《Building Web Solutions With ASP.NET and ADO.NET》(微软出版)一书的作者,是VB-2-The-Max (http://www.vb2themax.com <http://www.vb2themax.com>)的创始人。可通过[email protected]联系到Dino。

Ⅳ 如何在VC中嵌入脚本

1. 导入库 ,该指令慧袭一般加在租宏 stdafx.h 中 #import "msscript.ocx" no_namespace 2. 创建脚本对象/弊碧册/脚本引擎IScriptControlPtr m_pScript; m_pScript.CreateInstance(__uuidof(ScriptControl)); m_pScript-Timeout = 1000 * nTimeout;//

Ⅵ 游戏脚本问题,VC是什么我想学VC写脚要怎么学能写出和按键精灵那些脚本吗

电脑语言有脚本语言和编程语言的分别的,按键精灵,TC,VBS,这些都是脚本语言,简单好学写起来也容易啊,用文本工具就可以枯圆芹写,而编程语言就不同了,因为支持的功能多,难学,调用鼠标键盘这些硬件都要自己用API调用。像,C语言,易语言,PY,都是编程语言。
简单的理解就是,硬件由二进制数据控制——汇编语言——高级编程语言(C类语言)——VB,腔卜易语言—没毕—按键精灵,VBS,脚本语言。由低级语言到高级语言。这里的高级是用低级语言的基础的。

Ⅶ 怎么用c++写一个淘宝抢购的脚本

用c++写一个淘宝抢购的脚本的步骤如下所示。
1、使用Selenium定位淘宝登录页面颤如的用户名和密码输入框,输入淘宝账号和密码。
2、点击登录按钮,在登录成功后,可以使用饥拿Selenium定位淘宝商品页面的购买按钮。
3、烂洞搭模拟用户点击购买按钮,以达到抢购商品的目的。

Ⅷ VC脚本是什么意思

没听说过,不旦友过VC的nmake和make是可以写脚本的,就是描述如何将一个工程配置好参数,用make执行这个脚本后,生成最终的目标程序

如果用VC的话,很少有人手工写Makefile,一般都是工程自动生成的这个脚本。

常规理解,vbs, js, php, pearl, cgi, html,或者cmd, bat, csh, bash等等都配迟数是可以写脚本的,唯独VC自己出来的就培首是程序,所以你的说法我没听说过,

热点内容
sqlserverce 发布:2025-07-15 17:20:27 浏览:712
海量数据的存储管理 发布:2025-07-15 17:16:51 浏览:658
安卓手机哪个版本适合玩游戏 发布:2025-07-15 17:12:31 浏览:57
安装flexlinux 发布:2025-07-15 16:35:47 浏览:372
网站模板php 发布:2025-07-15 16:22:47 浏览:248
编译简谱 发布:2025-07-15 16:16:37 浏览:813
编程口是什么 发布:2025-07-15 16:11:28 浏览:497
微博如何从账号和密码登录 发布:2025-07-15 15:59:02 浏览:123
解说电影需要哪些硬件配置 发布:2025-07-15 15:56:59 浏览:380
ftp快捷键搜索文件 发布:2025-07-15 15:51:44 浏览:459