我见过:
http://www...
ftp://blah.blah...
file://blah.blah...
unreal://blah.blah...
mailto://blah.blah...
您看到的第一部分是什么http
叫什么?
我可以自己注册吗?
我正在构建一个从互联网上检索图像的应用程序.即使它工作正常,但在应用程序中使用try-catch语句时速度很慢(在错误的给定URL上).
(1)这是验证URL和处理错误输入的最佳方法 - 还是应该使用正则表达式(或其他方法)?
(2)如果我没有在textBox中指定http://,为什么应用程序尝试在本地查找图像?
private void btnGetImage_Click(object sender, EventArgs e)
{
String url = tbxImageURL.Text;
byte[] imageData = new byte[1];
using (WebClient client = new WebClient())
{
try
{
imageData = client.DownloadData(url);
using (MemoryStream ms = new MemoryStream(imageData))
{
try
{
Image image = Image.FromStream(ms);
pbxUrlImage.Image = image;
}
catch (ArgumentException)
{
MessageBox.Show("Specified image URL had no match",
"Image Not Found", MessageBoxButtons.OK,
MessageBoxIcon.Error);
}
}
}
catch (ArgumentException)
{
MessageBox.Show("Image URL can not be an empty string",
"Empty Field", …
Run Code Online (Sandbox Code Playgroud) 我想telnet:// blah打开putty而不是本机windows telnet客户端.
我甚至不知道在Windows下调用这个"功能"是什么,所以我没有运气找到任何有关它的信息.
先谢谢,Jan
我想myscheme://foo
通过我的应用程序像在任何浏览器中一样处理查询myscheme.exe
。
据我了解,解决方案将取决于所使用操作系统的版本。对于旧操作系统(直到 Windows 7),只需将记录保存在注册表中:
HKEY_CLASSES_ROOT
myscheme
(Default) = "URL:Myscheme Protocol"
URL Protocol = ""
DefaultIcon
(Default) = "myscheme.exe,1"
shell
open
command
(Default) = "C:\Program Files\Myscheme\myscheme.exe" "%1"
Run Code Online (Sandbox Code Playgroud)
不幸的是,将应用程序注册到 URI 方案声明这种方式已被弃用。我不应该再使用这个 API。页面上的推荐版本microsoft-edge
(它不包含有关它的信息)!!!
于是,我开始研究它windows 8
。我遇到了文件类型和 URI 关联模型,它说在Windows 8
应用程序中不再能够以编程方式将自己设置为文件类型或 URI 的默认处理程序。据我所知,新架构使用通知系统,用户通过特殊提示控制默认应用程序。但是默认程序说它对 Windows 10 不再有效(探索参考已经死了!)。
那么,如何在 Windows 10 中正确处理自定义协议呢?不幸的是,Windows 的文档很糟糕。那么不同版本的操作系统呢?我应该对不同的版本使用不同的技术吗?
PS请不要将此问题标记为重复。其他问题,例如如何在 Windows 中注册自定义 URL 协议?,如何创建自己的 URL 协议?(例如:so://...)提出已弃用的解决方案。
对不起,我的英语不好。
有没有办法将方案(如cms://)与Windows程序相关联?
因此,当用户键入cms:// user:password@server.com时,它会打开程序并使用给定的凭据自动连接.
我在Windows上运行.NET应用程序.我想点击一些页面元素(按钮链接flash应用程序等)来启动我的应用程序与一些特殊参数.(它不仅应该在IE中运行,而且还应该在基于WebKit的Windows浏览器上运行)在App安装期间,我们假设用户是Admin并且正在运行Vista或Windows 7或更高版本.
所以我的问题是 - 在哪里可以获得这种互动的例子(当然是来源)?
那么如何让基于WebKit的Browser或IE调用您的.Net应用程序呢?
我一直在尝试创建一个自定义协议(open_php_file://)来通过浏览器打开本地文件.我创建了以下注册密钥:
HKEY_CLASSES_ROOT
open_php_file
(Default) = "URL:PHPEd protocol"
URL Protocol = ""
DefaultIcon
(Default) = "phped.exe"
shell
open
command
(Default) = "C:\Program Files (x86)\NuSphere\7.0\phped.exe" "%1"
Run Code Online (Sandbox Code Playgroud)
问题是:我无法在浏览器中打开文件(例如:open_php_file:// c:\ file.txt),并且该协议未在Windows默认程序中列出.
如何在客户端运行批处理文件?一个exe文件?只是在客户端打开预装程序?
[编辑]
关于ActiveX,我试过了
var activeXObj = new ActiveXObject("Shell.Application");
activeXObj.ShellExecute("C:\\WINDOWS\\NOTEPAD.EXE", "", "", "open", "1");
Run Code Online (Sandbox Code Playgroud)
但这不起作用.有什么建议?
在阅读了官方 Dropbox 文档后,我设法编写了此代码以使用 DropBox 对用户进行身份验证并获取他的访问令牌。用户必须复制和粘贴令牌,我不喜欢这一步,我注意到一些开发人员可以使用类的withRedirect()
方法DbxWebAuth
。有一个使用重定向的示例,但它适用于 Web 应用程序,我无法将其调整为我的桌面应用程序。你们中有人与此有关吗?这是目前我的代码
public static void main(String[] args) throws Exception {
String accessToken = "";
String userLocale = null;
DbxRequestConfig requestConfig = new DbxRequestConfig("text-edit/0.1", userLocale);
DbxAppInfo appInfo = new DbxAppInfo("myString", "myString");
DbxWebAuth auth = new DbxWebAuth(requestConfig, appInfo);
DbxWebAuth.Request requestAuth = DbxWebAuth.newRequestBuilder().withNoRedirect().build();
String authorizeUrl = auth.authorize(requestAuth);
System.out.println("1. Go to " + authorizeUrl);
System.out.println("2. Click \"Allow\" (you might have to log in first).");
System.out.println("3. Copy the authorization code.");
//Abrimos el enlace de autenticación del …
Run Code Online (Sandbox Code Playgroud) 关于如何注册自定义 URL 方案(例如这个)有许多堆栈溢出问题。然而,在每种情况下的答案似乎都是写入特权注册表项HKEY_CLASSES_ROOT
。我的(基于 wix 的)安装程序目前在没有提升的情况下运行,按用户安装。有什么方法可以在不提升到管理员权限的情况下注册自定义 URL 方案?我不需要支持比 Windows 7 更旧的任何东西。
我想要实现的是在我的应用程序中执行特定操作的网页上有链接。我的应用程序主要是 .NET。该网页是 ASP.NET。
windows ×5
protocols ×3
url ×3
.net ×1
batch-file ×1
c# ×1
client-side ×1
credentials ×1
dropbox ×1
executable ×1
image ×1
installation ×1
java ×1
javascript ×1
shell ×1
token ×1
try-catch ×1
url-scheme ×1
webkit ×1
winapi ×1
windows-7 ×1
wix ×1