怎样调用本地文件
⑴ 如何用js调用本地exe文件
<html>
<body>
<SCRIPTlanguage=JavaScript>
functionRun(strPath){
exe.value=strPath;
try{
varobjShell=newActiveXObject("wscript.shell");
objShell.Run(strPath);
objShell=null;
}
catch(e){alert('找不到文件"'+strPath+'"(或它的组件之一)。请确定路径和文件名是否正确,而且所需的库文件均可用。')
}
}
</SCRIPT>
请输入要运行的程序:<br><inputname=exetype=textsize=20
value="regedit"><BUTTONclass=button
onclick="Run(exe.value)">确定</BUTTON><BUTTONclass=button
onclick=exe.value="";>重新输入</BUTTON><br>
<BUTTONclass=buttononclick="Run('notepad')">记事本</BUTTON><br>
<BUTTONclass=buttononclick="Run('mspaint')">画图板</BUTTON><br>
<BUTTONclass=buttononclick="Run('calc')">计算器</BUTTON><br>
<BUTTONclass=buttononclick="Run('cmd')">cmd</BUTTON><br>
<BUTTONclass=buttononclick="Run('Regedit')">Regedit</BUTTON><br>
<BUTTONclass=buttononclick="Run('Msconfig')">Msconfig</BUTTON><br>
<BUTTONclass=buttononclick="Run('file:///D:/Program%20Files/Winamp/WINAMP.EXE')">WINAMP</BUTTON><br>
<BUTTONclass=buttononclick="Run('IEXPLORE.EXE')">IE</BUTTON><br>
<BUTTONclass=buttononclick="Run('..')">..</BUTTON><br>
<BUTTONclass=buttononclick="Run('%windir%')">%windir%</BUTTON><br>
<BUTTONclass=buttononclick="Run('%temp%')">%temp%</BUTTON><br>
</body>
</html>
⑵ android 项目里面怎么 调用本地 文件
关键看你的error.jpg放在哪个了,res目录下一般会有好几个文件夹,其中drawable、drawable-hdpi、drawable-ldpi、drawable-mdpi、drawable-xhdpi这些都是用来存放图片文件的,在使用的时候,只需要获取你所在activity的上下文context,然后调用context.getResources().getDrawable(R.drawable.error);就可以拿到这个图片了。
⑶ linux下如何实现在网页中调用本地可执行文件
答:双击文件就行,如果在终端下就输入文件名,shell脚本的话要输入 "sh xxx.sh(扩展名不一定是sh)" 如果没反应 很可能你用64为系统打开32位可执行文件或用32位系统打开64位可执行文件 所以最后确认以下有没有这问题 找不到问题再问我
⑷ 怎么在虚拟机上调用本地硬盘里的文件啊
把你想调用的本地硬盘设置为完全共享,然后虚拟机通过网络邻居即可访问与修改
⑸ file怎么获取本地文件里的文件
File类有两个常用方法可以得到文件路径一个是:getCanonicalPath(),另一个是:getAbsolutePath(),可以通过File类的实例调用
⑹ 在浏览器上如何调用本地的资源
目前在Internet上的应用均采用客户服务器模型,客户提出请求,服务器作出应答,即所谓请求应答模式,使用最广的是客户端为浏览器的B/S模式。通常,浏览器中是禁止运行本地可执行程序的。但不允许浏览器运行,客观上限制了浏览器的用途和作用。要解决此问题,必须安全扩展浏览器的功能。扩充浏览器的功能,一是采用控件或插件技术,二是采用小程序技术。市场上的主流浏览器,如IR和Netscape均支持这两种技术。控件或插件多用VC、BC++、VB和Delph等语言开发。小程序一般是由,iava语言来编程的。众所周知,java语言通过“砂箱”机制禁止访问本地文件系统,更谈不上调用本地程序运行,要通过浏览器调用本地可执行程序,需使用控件或插件技术。
一、安全调用本地程序的要求
浏览器中调用本地程序起码要解决两个问题,一是安全性,二是位置透明性。
由于浏览器运行在客户端,安全性非常重要,如果安全性不能解决,运行在浏览器中的恶意控件轻则可能传播病毒、破坏本地文件系统,重则造成计算机系统瘫痪和信息泄密。浏览器中均有默认的安全级别,IE浏览器默认的是中级安全级别。在此安全级别下要让浏览器启动运行本地可执行程序.一早要杷榨件标记为可安全执行的。二是要对控件做数字签名。把控件标记为可安全执行的含义是要在控件中实现必需的Iknown接口外,还要实现“对象安全”接口,这样控件才能与浏览器协调一致的工作。对控件做数字签名就是采用非对称加密算法将散列函数处理后的控件散列值做加密,以保证控件的完整性和不可否认性。如果对控件不做安全标记,也不进行数字签名,要想在本地运行可执行程序,就必须降低浏览器的安全性。浏览器的安全性降低后,对于内部网络似乎问题不是很大,但要在internet上,那就给病毒、黑客人侵打开了方便之门。除非有充足的理由,一般情况下,决不可随便降低浏览器的安全性。
所谓位置透明性就是运行可执行程序与位置无关,无论其放在何处都能正常运行。位置透明性对写过控件的人并不陌生,Windows中无处不在,控件无一例外都是位置透明的。其解决办法是使用一个128位的clsid来唯一标识。clsid在HTML页面中和系统的注册表中随处可见。在使用控件时,无论是手工还是系统自动注册都是在注册表中建立clsid和控件路径的映射关系。通过这种映射关系自动解决了位置透明性。
我们也可通过注册表解决运行程序的位置透明性问题。这里的映射关系可建立成应用程序名和可运行程序路径之间的映射关系。用应用程序名来唯一地标识可执行程序,其相当于控件的cMd,用安装程序来安装可执行程序,相当于控件注册。Windows中通过安装程序安装的可执行程序,其键值均在HKEY_LOCAlMACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\中,用流行的的InstallShield安装软件不难实现。调用本地可执行程序时在注册表中查找其安装路径,结合应用程序名和注册表键值中记录的执行程序路径,即可找到本地可执行程序,原理与控件的动态加载运行完全一致。
二、实现机理
用支持控件的开发工具,如VC、VB等开发一个调用本地可执行程序的控件,可命名为Cyxm—LocalCallCtrl,除了实现必需的Iknown接口外,还要实现IObjectSafety接口,即前面提到的“安全对象”接口。再实现一个调用本地可执行程序的函数,如localCall(),开发完成后对控件做数字签名就可使用了。
1.IObjectSafety接口
该接口的核心是以下的两个函数:
STDMETHODIMP CYxmLocalCallCtrl::XObjectSafety::
GetInterfaceSafetyOptions(
REFIID riid,
Dword——RPC—FAR*pdwSupportedOptions,
DWORD——RPC—FAR*pdwEnabledOptions
),
STDMETHODIMP CYxmLocalCallCtrl::XObjectSafety::Set—
InterfaceSafetyOptions(
REFIID riid,
DWORD dwOptionSetMask,
DWORD dwEnabledOptions
)
这两个函数只是用对象嵌套的方式实现的一个样例,如果用对象聚合的方式实现它,可能不是这个样子,但接口参数和函数名是不会发生变化的。对这两个函数的编码并不复杂,如果你不需要做什么,其函数体可以不用写任何代码,简单地返回就可以了。之所以写这两个函数是浏览器的要求,其加载控件时,要调用这两个函数,也就是浏览器要求你承认你写的控件是安全地。这是前面所述标记为安全脚本的技术含义。其实IE浏览器支持的接口很多,如IDispatch、IHTML-Document2、IHTMLDocument、IHTMLCollection、I-HTMLFormElement、IHTMLInputTextElement等等。扩充其功能都是通过实现它们完成的。如有些文章中介绍的通过IE浏览器窃取网页中的用户名和密码也是利用这种原理。
2.数字签名
对控件做数字签名首先要制作数字证书,数字证书可从数字认证中心申请得到。如果不想付费,而自己的网络又无数字认证中心,可用VC提供的工具来完成。具体做法是,用MakeCert.Exe制作数字证书,用CabArc.Exe制作压缩包,用signcode.exe进行数字签名。完成数字签名后,将控件部署到web中,即可使用。
3.使用控件
如果想通过浏览器调用word.exe字处理软件,在页面中插入如下的代码和脚本程序,即可启动。不要忘了容错处理,即系统中未安装可执行程序的情况下,也要保证浏览器流畅运行。
<object classid=“clsid:D7D397BA—55D3—45FA—9BF4—
F7A30C311F1A”,id=“YxmLocalCall”,codebase=“http://www.
mir.gov/new—hp/yxmLocalCall.cab#version=2,0,0,0”>
<param name=“Version”,value=“65536">
<param name=“ExtentX”,value=“2646">
<param name=“—ExtentY”,value=“1323">
<param name=“—StockProps”,value=“0”>
<param name=“exeKey”,value=“wlnword.exe”>
</object>
<script>
YxmLocalCall.exekey=“winwOrd.exe”;
YxmLocalCall.localCall();
</script>
上述代码中的clsid就是前面所述的控件标识符,不同的控件有不同的取值,相同功能不同版本的控件也有不同的取值。
⑺ 如何使用C调用一个本地文件系统中的应用程序
比如,你QQ目录在D盘tenctent文件夹里,可以用system来调用。
system("d:\\tenctent\\qq.exe");
⑻ 网页中如何调用本地文本内容
不可能实现的,浏览器不会让你操作本地文件的,你可以查看一下浏览器安全策略
⑼ HTML网页如何访问本地文件
1、首先在前台建立uploadFile.aspx文件,利用.net自带控件FileUpload上传本地文件到服务器。
6、最后看一下下图上传界面。
⑽ 如何用javascript访问本地文件
<script language="javascript">
var s;
s="";
function ShowFolderFileList(i,folderspec)
{
var fso,f,fc,name;
var url,str,file,filename;
var i;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.GetFolder(folderspec);
s += i++ + "\t" + f.Name + "\t\n";
fc = new Enumerator( f.files );
for (; !fc.atEnd(); fc.moveNext( ) )
{
filename = fso.GetFileName( fc.item( ) );
if (filename.indexOf(".url")>=0)
{
filename = filename.substring( 0 , filename.length-4 );
file = fso.GetFile( fc.item( ) );
ts = file.OpenAsTextStream( 1 , 0 );
str=ts.ReadLine();
while( str.indexOf( "URL=" ) < 0 && !ts.AtEndOfStream )
{
str = ts.ReadLine( );
}
ts.Close( );
s += i + "\t" + filename + "\t" + str.substr( str.indexOf( "URL=") + 4 ) + "\n";
}
}
fc = new Enumerator(f.SubFolders);
for (; !fc.atEnd(); fc.moveNext())
{
ShowFolderFileList(i,fc.item());
}
return( s );
}
function exe()
{
document.form1.tt.value=ShowFolderFileList(1,document.form1.t.value)
}
</script>
<form name="form1" method="post" action="favorite.asp?action=save">
<input name="t" type="text" id="t" value="C:\\Documents and Settings\\Administrator\\Favorites" size="70">
<textarea name="tt" cols="120" rows="30" wrap="VIRTUAL"></textarea>
<br/>
<input type="button" name="Submit" value="载入" onClick="exe();">
</form>