在Windows Mobile 6手机上存储文件(如图像)的位置?

时间:2009-11-25 05:09:30

标签: c# .net windows-mobile compact-framework

我想在手机应用程序中添加几张图片。但是我不知道在哪里存放它们。就像我将它们添加到我的VS项目中一样,但当然图像路径是我硬盘上的路径。

因此就像我在Windows Mobile中存储的特殊文件夹一样。就像我将我的应用程序转移到手机上一样,我将不得不在某个地方粘贴这个图像。它也必须是用户无法删除的地方。

由于

2 个答案:

答案 0 :(得分:1)

您可以将所有图像添加为资源并构建它, 或者单独保存在程序文件中并从中恢复所有图像,通常用户不会从程序文件中删除内容。

这是将图像添加为资源的步骤,

1)创建一个新的C#项目 2)转到项目属性 3)转到资源选项卡 4)单击Add Resource的Dropdown按钮 5)选择添加现有文件 6)从您的系统中选择图像。 这会导致向项目资源添加图像。

然后为了使用图像,请遵循以下语法

YourProjectNameSpace.Properties.Resources.ImageFileName

这是显示从项目资源中获取的图像的示例代码

Bitmap MyBitmap = new Bitmap(Delete1.Properties.Resources.Greenish_Logon_Vista_by_ralph1975);
pictureBox1.Image = MyBitmap;

我希望这会有所帮助..

答案 1 :(得分:1)

我建议将所有图像保存在应用程序安装文件夹

下的子目录(即图像)中

例如:MyApp \ Images

调试项目时,图像不会复制到Debug或Release文件夹中,您必须手动复制它们(或者如Matt所述,从解决方案资源管理器中选择图像文件,在“属性”中选择“复制到输出目录”如“Copy always”或“Copy if newer”。它还将保留目录结构),然后将整个Debug或Release文件夹复制到设备中。

您可以在应用程序中指定图像的路径,如:

// Get full application path
String full_path = System.Reflection.Assembly.GetCallingAssembly().GetName().CodeBase;
if (full_path.LastIndexOf("\\") != -1)
{
    // Take away application name from full path and return current directory name
    String directory_path = full_path.Substring(0, full_path.LastIndexOf("\\") + 1);
    // Specify images directory
    String directoryImages = directory_path + "images";
}

如果要创建安装程序,请将文件夹和图像添加到安装程序中(或者右键单击CAB项目文件系统下的“应用程序文件夹”,选择“添加>项目”输出并选择“内容文件”并按好)。当您使用.CAB文件安装应用程序时,它将安装文件并保留相同的文件目录结构(标记为“始终复制”或“如果更新则复制”)。