在这种情况下,您使用新的Metro风格的应用程序为Windows 8构建了UI前端,并希望它与在同一本地计算机上的桌面上运行的.NET应用程序(例如,Windows服务应用程序)进行通信.
metro应用程序和桌面应用程序之间有哪些形式的进程间通信?
感谢Visual Studio团队的Pavel Minaev,他在评论中提供了一些初步信息,引用:
根据Martyn Lovell的说法,没有任何有意识的机制,可以用于它的一些机制是故意限制的.例如,命名管道不在那里,也不是内存映射文件.有套接字(包括服务器套接字),但是当连接到localhost时,您只能连接到同一个应用程序.您可以在其中一个共享的"已知文件夹"(文档,图片等)中使用普通文件,但这是一个相当粗糙的黑客,需要轮询并且对用户可见.- Pavel Minaev 就此问题发表评论
因此,我正在考虑使用Web服务或读取/写入数据库,以便进行某种形式的通信,当进程在同一台机器上运行时,这两种方式都显得过于苛刻.
我在这里尝试是否有意义?我可以看到Metro应用程序需要成为桌面上运行的现有服务的前端UI.或者将WPF用于桌面上运行的前端UI(即非城域应用程序)更好.
我只需要一种使用C#查询NTP服务器的方法,以便将NTP服务器的日期时间作为a string
或a 返回DateTime
.
这最简单的形式怎么可能?
我刚刚遇到了.NET 4中新增的MemoryCache.
我知道如果你想要它可以是有用的:
是否有任何其他令人信服的理由使用MemoryCache而不是标准 Dictionary<string,object>
我有几本关于C#和.NET的书籍,并没有任何参考.
我看到的问题是我正在尝试使用http.FileServer
Gorilla mux Router.Handle功能.
这不起作用(图像返回404)..
myRouter := mux.NewRouter()
myRouter.Handle("/images/", http.StripPrefix("/images/", http.FileServer(http.Dir(HomeFolder + "images/"))))
Run Code Online (Sandbox Code Playgroud)
这工作(图像显示确定)..
http.Handle("/images/", http.StripPrefix("/images/", http.FileServer(http.Dir(HomeFolder + "images/"))))
Run Code Online (Sandbox Code Playgroud)
简单的下面的web服务器程序,显示问题...
package main
import (
"fmt"
"net/http"
"io"
"log"
"github.com/gorilla/mux"
)
const (
HomeFolder = "/root/test/"
)
func HomeHandler(w http.ResponseWriter, req *http.Request) {
io.WriteString(w, htmlContents)
}
func main() {
myRouter := mux.NewRouter()
myRouter.HandleFunc("/", HomeHandler)
//
// The next line, the image route handler results in
// the test.png image returning a 404.
// myRouter.Handle("/images/", http.StripPrefix("/images/", http.FileServer(http.Dir(HomeFolder + "images/"))))
//
myRouter.Host("mydomain.com") …
Run Code Online (Sandbox Code Playgroud) 我正在尝试从我的Android应用程序打开SSH客户端会话.尝试连接到本地网络上的设备(Raspberry Pi).我正在使用SSHJ库版本0.10.0.它在ssh.connect()
通话中失败,TransportException
最终由a引起NoSuchAlgorithmException
.请参阅下面的例外树.
SSHClient ssh = new SSHClient(new AndroidConfig());
Session session = null;
try {
//ssh.loadKnownHosts();
// Exception thrown on this line
ssh.connect("192.168.1.109", 22);
// Doesn't reach below
ssh.authPassword("user", "password");
session = ssh.startSession();
}
catch (net.schmizz.sshj.transport.TransportException ex) {
;
}
Run Code Online (Sandbox Code Playgroud)
例外树:
net.schmizz.sshj.transport.TransportException
net.schmizz.sshj.common.SSHException
net.schmizz.sshj.common.SSHRuntimeException
java.security.GeneralSecurityException: java.security.NoSuchAlgorithmException: KeyFactory ECDSA implementation not found
java.security.NoSuchAlgorithmException: KeyFactory ECDSA implementation not found
Run Code Online (Sandbox Code Playgroud)
其他系统信息:
SSHJ library : v0.10.0
Android device : Galaxy Note 3 running Android 4.4.2
Run Code Online (Sandbox Code Playgroud)
我在Android Studio中使用了maven依赖支持来引入SSHJ …
在Haskell网站上,这个示例是quicksort实现:
quicksort :: Ord a => [a] -> [a]
quicksort [] = []
quicksort (p:xs) = (quicksort lesser) ++ [p] ++ (quicksort greater)
where
lesser = filter (< p) xs
greater = filter (>= p) xs
Run Code Online (Sandbox Code Playgroud)
该网站有一个解释,但我有几个问题,我没有看到解决...
我需要更新 Visual Studio 2017 Pro 以使用 Xamarin Android 10.0,以便我可以安装 Android SDK 10.0(API 级别 29)。
目前,已安装 Xamarin Android 9.1.7.0。它说 Visual Studio 是最新的,并且不提示安装 Xamarin Android 10.0。
根据此页面,支持 VS 2019,但未提及 VS 2017。这是否意味着我需要运行 VS 2019 才能安装 Xamarin Android 10.0?
visual-studio xamarin.android xamarin xamarin.forms android-10.0