回答編集履歴
1
見直しキャンペーン中
test
CHANGED
@@ -1,111 +1,56 @@
|
|
1
1
|
スキームハンドラーでやるのが正攻法のようです(全然わかっていませんが^^;
|
2
|
-
|
3
2
|
[Scheme Handler · cefsharp/CefSharp Wiki](https://github.com/cefsharp/CefSharp/wiki/General-Usage#scheme-handler)
|
4
3
|
|
5
|
-
|
6
|
-
|
7
4
|
* 引数なしの`new ChromiumWebBrowser()`はもう旧型式らしいので、デザイナで張り付けずコードで生成する
|
8
|
-
|
9
5
|
* `LoadHtml`での読み込みでなく`index.html`を作成する
|
10
|
-
|
11
6
|
* `index.html`では`<script src="jquery-3.3.1.min.js"></script>`のように記述する
|
12
7
|
|
13
|
-
|
14
|
-
|
15
8
|
以上で当方では想定通りに動きました(exeと同じフォルダにhtml・js)
|
16
|
-
|
17
9
|
文字列から読む方法はわかりませんでした。
|
18
10
|
|
19
|
-
|
20
|
-
|
21
|
-
```
|
11
|
+
```cs
|
22
|
-
|
23
12
|
using System.Windows.Forms;
|
24
|
-
|
25
13
|
using CefSharp;
|
26
|
-
|
27
14
|
using CefSharp.SchemeHandler;
|
28
|
-
|
29
15
|
using CefSharp.WinForms;
|
30
16
|
|
31
|
-
|
32
|
-
|
33
17
|
namespace Questions249641
|
34
|
-
|
35
18
|
{
|
36
|
-
|
37
19
|
public partial class Form1 : Form
|
38
|
-
|
39
20
|
{
|
40
|
-
|
41
21
|
private readonly ChromiumWebBrowser chromiumWebBrowser1;
|
42
22
|
|
43
|
-
|
44
|
-
|
45
23
|
public Form1()
|
46
|
-
|
47
24
|
{
|
48
|
-
|
49
25
|
InitializeComponent();
|
50
26
|
|
51
|
-
|
52
|
-
|
53
27
|
var settings = new CefSettings();
|
54
|
-
|
55
28
|
settings.RegisterScheme(new CefCustomScheme
|
56
|
-
|
57
29
|
{
|
58
|
-
|
59
30
|
SchemeName = "localfolder",
|
60
|
-
|
61
31
|
DomainName = "cefsharp",
|
62
|
-
|
63
32
|
SchemeHandlerFactory = new FolderSchemeHandlerFactory(
|
64
|
-
|
65
33
|
rootFolder: Application.StartupPath,
|
66
|
-
|
67
34
|
hostName: "cefsharp",
|
68
|
-
|
69
35
|
defaultPage: "index.html")
|
70
|
-
|
71
36
|
});
|
72
|
-
|
73
|
-
|
74
37
|
|
75
38
|
Cef.Initialize(settings);
|
76
39
|
|
77
|
-
|
78
|
-
|
79
40
|
CefSharpSettings.LegacyJavascriptBindingEnabled = true;
|
80
|
-
|
81
41
|
chromiumWebBrowser1 = new ChromiumWebBrowser("localfolder://cefsharp/");
|
82
|
-
|
83
42
|
chromiumWebBrowser1.JavascriptObjectRepository.Register("objectForScripting", new ObjectForScriptiing(), false);
|
84
|
-
|
85
43
|
|
86
|
-
|
87
44
|
Controls.Add(chromiumWebBrowser1);
|
88
|
-
|
89
45
|
chromiumWebBrowser1.Dock = DockStyle.Fill;
|
90
|
-
|
91
46
|
}
|
92
|
-
|
93
|
-
|
94
47
|
|
95
48
|
private void Form1_FormClosing(object sender, FormClosingEventArgs e) => Cef.Shutdown();
|
96
49
|
|
97
|
-
|
98
|
-
|
99
50
|
public class ObjectForScriptiing
|
100
|
-
|
101
51
|
{
|
102
|
-
|
103
52
|
public void showMessage() => MessageBox.Show("Message", "Title");
|
104
|
-
|
105
53
|
}
|
106
|
-
|
107
54
|
}
|
108
|
-
|
109
55
|
}
|
110
|
-
|
111
56
|
```
|