質問編集履歴

7

NuGetをダウンロードした場所を定義

2021/08/12 02:44

投稿

BeatStar
BeatStar

スコア4958

test CHANGED
File without changes
test CHANGED
@@ -307,3 +307,7 @@
307
307
  + (ここからコンパイルしたりしている)
308
308
 
309
309
  ```
310
+
311
+
312
+
313
+ ※ NuGet は [ここ](https://docs.microsoft.com/ja-jp/nuget/consume-packages/install-use-packages-nuget-cli)からダウンロードしました。

6

追記3

2021/08/12 02:44

投稿

BeatStar
BeatStar

スコア4958

test CHANGED
File without changes
test CHANGED
@@ -107,3 +107,203 @@
107
107
 
108
108
 
109
109
  (今回初めてNuGetと言うものを使いましたのでちょっと手間取っています……)
110
+
111
+
112
+
113
+ ----------------
114
+
115
+
116
+
117
+ [追記3]
118
+
119
+
120
+
121
+ CommonSaveFileDialogをやってみました。
122
+
123
+
124
+
125
+ NuGetで 適当なところに Microsoft.WindowsAPICodePack.dll をDLし、
126
+
127
+ net48ディレクトリに入っている Microsoft.WindowsAPICodePack.dll を
128
+
129
+ 今回のプロジェクトの、VC#等でいうReleaseディレクトリ内に相当する場所( binディレクトリ ) に配置。
130
+
131
+
132
+
133
+ そして、Cygwin上で
134
+
135
+
136
+
137
+ ```
138
+
139
+ C:/Windows/Microsoft.NET/Framework/v4.0.30319/csc /nologo -reference:./bin/Microsoft.WindowsAPICodePack.dll /target:winexe /out:.\bin\Main.eXe .\src\main.cs .\src\sub\MainForm.cs
140
+
141
+ ```
142
+
143
+
144
+
145
+ とコンパイルしました。
146
+
147
+
148
+
149
+ コードは、
150
+
151
+
152
+
153
+ ```C#
154
+
155
+ using System;
156
+
157
+ using System.Windows.Forms;
158
+
159
+
160
+
161
+ using Sample.Forms;
162
+
163
+
164
+
165
+ using Microsoft.WindowsAPICodePack;
166
+
167
+ using Microsoft.WindowsAPICodePack.Dialogs;
168
+
169
+
170
+
171
+ namespace Sample{
172
+
173
+ class EntryPoint{
174
+
175
+ [STAThread]
176
+
177
+ static void Main( string[] args ){
178
+
179
+ try{
180
+
181
+ // メインウィンドウの生成と起動
182
+
183
+ Application.Run( new MainForm( args ) );
184
+
185
+
186
+
187
+ CommonSaveFileDialog dialog = new CommonSaveFileDialog();
188
+
189
+
190
+
191
+ // ここで処理する
192
+
193
+
194
+
195
+ }catch( System.Exception err ){
196
+
197
+ MessageBox.Show( err.Message, "例外発生" );
198
+
199
+ }
200
+
201
+ }
202
+
203
+ }
204
+
205
+ }
206
+
207
+ ```
208
+
209
+
210
+
211
+ としました。
212
+
213
+
214
+
215
+ すると、
216
+
217
+
218
+
219
+ ```
220
+
221
+ src\main.cs(17,17): error CS0246: 型または名前空間名 'CommonSaveFileDialog' が見つかりませんでした。using
222
+
223
+ ディレクティブまたはアセンブリ参照が不足しています。
224
+
225
+ src\main.cs(17,51): error CS0246: 型または名前空間名 'CommonSaveFileDialog' が見つかりませんでした。using
226
+
227
+ ディレクティブまたはアセンブリ参照が不足しています。
228
+
229
+ make: *** [makefile:69: .\bin\Main.eXe] Error 1
230
+
231
+ ```
232
+
233
+
234
+
235
+ とエラーを吐きます。
236
+
237
+
238
+
239
+ ちなみに sub\MainForm.cs に書こうとすると usingディレクティブを追加しただけで下記のエラーを吐きます。
240
+
241
+
242
+
243
+ ```
244
+
245
+ src\sub\MainForm.cs(8,17): error CS0234: 型または名前空間名 'WindowsAPICodePack' は名前空間 'Microsoft'
246
+
247
+ に存在しません。アセンブリ参照が不足しています。
248
+
249
+ make: *** [makefile:72: .\bin\Testor.eXe] Error 1
250
+
251
+ ```
252
+
253
+ と出ます。
254
+
255
+
256
+
257
+ DLLのファイル名自体に "." を含んでいるためかと思い、
258
+
259
+ ./bin/WindowsAPICodePack.dll
260
+
261
+ のようにしてみましたが変わらず。
262
+
263
+
264
+
265
+ "/" がスイッチと解釈されているのかと思い、(コンパイル時に) -reference:.\bin\WindowsAPICodePack.dll のようにしてみましたが、
266
+
267
+ それでも変わらず。
268
+
269
+
270
+
271
+ メッセージ的には「名前空間が違う」か「(usingしている)名前空間が足りない」的な意味でしょうけど、
272
+
273
+ 「WindowsAPICodePack CommonSaveFileDialog」と検索しても
274
+
275
+
276
+
277
+ ```
278
+
279
+ using Microsoft.WindowsAPICodePack;
280
+
281
+ ```
282
+
283
+
284
+
285
+ を追加しろ…とだけなので……
286
+
287
+
288
+
289
+ [構成]
290
+
291
+ ```
292
+
293
+ + binディレクトリ
294
+
295
+ + WindowsAPICodePack.dll
296
+
297
+ + (ここに実行ファイルが生成される)
298
+
299
+ + srcディレクトリ
300
+
301
+ + main.cs
302
+
303
+ + subディレクトリ
304
+
305
+ + MainForm.cs
306
+
307
+ + (ここからコンパイルしたりしている)
308
+
309
+ ```

5

追記3

2021/08/12 02:37

投稿

BeatStar
BeatStar

スコア4958

test CHANGED
File without changes
test CHANGED
@@ -91,3 +91,19 @@
91
91
 
92
92
 
93
93
  (説明下手ですみません…)
94
+
95
+
96
+
97
+ --------------
98
+
99
+
100
+
101
+ [追記3]
102
+
103
+ 皆様ありがとうございます。
104
+
105
+ 今すぐには試せない環境で、調べてみるとDLLのアクセスが必要であることがわかったため、その使い方を一旦学んでから今回の質問を閉じる事にします。
106
+
107
+
108
+
109
+ (今回初めてNuGetと言うものを使いましたのでちょっと手間取っています……)

4

2021/08/10 05:29

投稿

BeatStar
BeatStar

スコア4958

test CHANGED
File without changes
test CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
 
10
10
 
11
- メモリ等の関係上、VC#を入れることができず、csc.exeで直接コンパイルしています。
11
+ メモリ等の関係上、VC#を入れることができず、csc.exeで直接コンパイルしています。(オンラインすらできない…)
12
12
 
13
13
 
14
14
 

3

2021/08/09 09:51

投稿

BeatStar
BeatStar

スコア4958

test CHANGED
File without changes
test CHANGED
@@ -44,6 +44,8 @@
44
44
 
45
45
  コンパイラ: csc
46
46
 
47
+ **種類: WinForm**
48
+
47
49
 
48
50
 
49
51
  -----

2

2021/08/09 09:44

投稿

BeatStar
BeatStar

スコア4958

test CHANGED
File without changes
test CHANGED
@@ -73,3 +73,19 @@
73
73
 
74
74
 
75
75
  あのコンボボックスとかの部分でユーザに選択させたいのですが、これって無理でしょうか?
76
+
77
+
78
+
79
+ -----
80
+
81
+
82
+
83
+ [追記2]
84
+
85
+
86
+
87
+ 一応、別途用意すること自体は頭の片隅にありましたが、ユーザー目線で考えると煩わしいかなぁと思ったので今回の質問に至りました。
88
+
89
+
90
+
91
+ (説明下手ですみません…)

1

2021/08/09 08:23

投稿

BeatStar
BeatStar

スコア4958

test CHANGED
File without changes
test CHANGED
@@ -43,3 +43,33 @@
43
43
  .NET Framework: 4.0
44
44
 
45
45
  コンパイラ: csc
46
+
47
+
48
+
49
+ -----
50
+
51
+
52
+
53
+ [追記1]
54
+
55
+
56
+
57
+ 失礼しました。
58
+
59
+
60
+
61
+ イメージとしては[こちら](https://atmarkit.itmedia.co.jp/ait/spv/2009/11/news016.html)にある、画像の『文字コード(E):』の部分です。
62
+
63
+
64
+
65
+ C#のSaveFileDialogを使ってみると文字コード指定できるComboxがありません。
66
+
67
+ (まあ、WinAPIでもそうだけど)
68
+
69
+
70
+
71
+ 公式でプロパティを調べてもそれらしきものすら見当たらず…
72
+
73
+
74
+
75
+ あのコンボボックスとかの部分でユーザに選択させたいのですが、これって無理でしょうか?