怎样编程在应用程序中打开浏览器?

shijies 2008-06-06 06:59:47
希望通过运行程序中的一段代码打开浏览器。
...全文
180 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
qlonsh 2008-06-10
  • 打赏
  • 举报
回复
ShellExecute()API函数
shijies 2008-06-08
  • 打赏
  • 举报
回复
可以将IP设为localhost,用浏览器显示程序运行的结果吧?
shijies 2008-06-07
  • 打赏
  • 举报
回复
并不是在服务器上运行,而是exe文件。
shijies 2008-06-07
  • 打赏
  • 举报
回复
1 NetBox
NetBox 是一个使用脚本语言进行应用软件开发与发布的开发环境和运行平台,使用 NetBox,可以完全使用脚本语言(比如 VBScript,Javascript) 创建出稳定高效的应用软件,并且可以平滑移植到从 Windows 98 到 Windows .NET Server 的全部操作系统上。

NetBox 提供完全与操作系统无关的高性能的 HttpServer 对象,且完整支持 asp 服务器脚本技术,可以方便地将成熟的 asp 应用通过 NetBox 部署到各种操作环境,由于不再局限于操作系统的限制,甚至可以在 Windows XP 上达到超出 Windows 2000 Advance Server 的性能支持。

NetBox 还提供底层设备的支持,通过 NetBox 的内部对象 Socket 支持,可以方便地进行底层网络编程,NetBox 也提供高端对象的支持,通过使用 TcpServer,程序员可以提供高性能的多线程 Tcp 服务器,改变了 VBScript 和 Javascript 程序员不能进行低端编程的窘况。

NetBox 通过提供 Service 对象,使得 NetBox 应用得以安装成为系统服务,免除了人工干预运行之苦,通过以服务方式运行,应用软件可以在第一时间得到控制,并且不受用户登录退出的影响,从而提供更加稳定的服务。NetBox 同时提供了基于 Windows NT 技术的服务和基于 Windows 98 技术的服务,由同一套对象支持,使用方法完全相同,更加方便在不同操作系统下移植应用。

对于需要直接用户交互的软件,NetBox 提供了对控制台的访问支持,Console 对象提供了对控制台的简单支持,基本可以满足简单用户交互的需求。

对于需要复杂商业逻辑的应用,可以使用脚本部件进行逻辑封装,NetBox 支持直接使用微软 wsc 格式的脚本部件,极大方便多层应用的开发。

NetBox 可以以两种方式运行,开发模式和发布模式。在开发模式中,所有的脚本代码都是存放在 NetBox 所在的目录及其子目录中,以便于修改、调试。在最终软件发布时,出于版权考虑、代码安全考虑、代码完整性考虑等,可以将全部代码与运行环境使用 NetBox 专用的发布工具发布成为一个完全独立执行的发布版本,全部 NetBox 支持的脚本程序,包括主程序、asp 程序、wsc 对象,以及程序所引用的文件,包括 Include 文件、Web 应用所必须的静态文件等等,都可以全部被发布进这个文件,从而达到发布整个应用的目的。
http://tieba.baidu.com/f?kz=117395436#sub

这是否意味着在应用程序中可以使用Delphi和asp混合编程?
shuihan20e 2008-06-07
  • 打赏
  • 举报
回复
uses shellapi;

ShellExecute(handle,'open','http://www.163.com','-s','',SW_SHOWNORMAL);


或者放个webbrowser

webbrowser.navigate('http://www.163.com');
shijies 2008-06-07
  • 打赏
  • 举报
回复
印象中我以前看到过一种服务器软件,大概叫什么box,可以嵌入到应用程序中使用。
Heyongfeng 2008-06-06
  • 打赏
  • 举报
回复
打开IE浏览器
ShellExecute(handle,'open','C:\Program Files\Internet Explorer\iexplore.exe','-s','',SW_SHOWNORMAL);
shijies 2008-06-06
  • 打赏
  • 举报
回复
感觉运行asp程序在浏览器上的显示效果好
大大怪老张 2008-06-06
  • 打赏
  • 举报
回复
可以用 TWebBrowser 组件,是 Internet 面板的最后一个。

它可以打开一个 url,最简单的用法比如

procedure TForm1.Button1Click(Sender: TObject)
begin
WebBrowser1.Navigate('http://www.163.com');
end;



关于 Delphi 本地执行 ASP 程序,目前我还不知道有什么第三方的组件支持本地解析asp代码。 通常 asp 都是用在服务端脚本。
shijies 2008-06-06
  • 打赏
  • 举报
回复
能否将ASP代码嵌入Delphi编写的应用程序中,让应用程序打开浏览器,在浏览器里显示ASP程序?
大大怪老张 2008-06-06
  • 打赏
  • 举报
回复
如果你只是想打开浏览器的话,可以用下面的代码:

uses
ShellApi;


ShellExecute(0, 'open', 'c:\Program Files\Internet Explorer\iexplore.exe', 'http://www.163.com', nil, SW_SHOW);


如果你想对启动的进程作些监控,那就需要用 CreateProcess了, 这个 API 可以返回被打开进程的句柄。
MSDN 中的例子:

#include <windows.h>
#include <stdio.h>
#include <tchar.h>

void _tmain( int argc, TCHAR *argv[] )
{
STARTUPINFO si;
PROCESS_INFORMATION pi;

ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
ZeroMemory( &pi, sizeof(pi) );

if( argc != 2 )
{
printf("Usage: %s [cmdline]\n", argv[0]);
return;
}

// Start the child process.
if( !CreateProcess( NULL, // No module name (use command line)
argv[1], // Command line
NULL, // Process handle not inheritable
NULL, // Thread handle not inheritable
FALSE, // Set handle inheritance to FALSE
0, // No creation flags
NULL, // Use parent's environment block
NULL, // Use parent's starting directory
&si, // Pointer to STARTUPINFO structure
&pi ) // Pointer to PROCESS_INFORMATION structure
)
{
printf( "CreateProcess failed (%d)\n", GetLastError() );
return;
}

// Wait until child process exits.
WaitForSingleObject( pi.hProcess, INFINITE );

// Close process and thread handles.
CloseHandle( pi.hProcess );
CloseHandle( pi.hThread );
}

  • 打赏
  • 举报
回复
ShellExecute
CreateProcess

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧