سلام دوستان عزیز
من توی برنامه از فایل فلش استفاده کردم
و لازمه قبل از اجرای برنامه در سیستم مقصد فلش پلیر نصب بشه
کسی می دونه چطور با اجرای برنامه و زدن کلید نصب در صفحه اصلی می تونم برنامه فلش پلیر رو از فولدر برنامه فراخوانی و نصب کنم؟؟؟؟؟
ممنونم
سلام دوستان عزیز
من توی برنامه از فایل فلش استفاده کردم
و لازمه قبل از اجرای برنامه در سیستم مقصد فلش پلیر نصب بشه
کسی می دونه چطور با اجرای برنامه و زدن کلید نصب در صفحه اصلی می تونم برنامه فلش پلیر رو از فولدر برنامه فراخوانی و نصب کنم؟؟؟؟؟
ممنونم
شما باید تاپیک تو در این تالار می زدی
https://barnamenevis.org/forumdisplay...%88-Deployment
شما اگه نصب برنامه اصلی تو با اینستایل شیلد انجام می دی خوب همون جا هم بگو تا فلش پلیر رو در صورت نصب نبودن برات نصب کنه .
دوست عزیز شما کار می خاید انجام بدید که هیچ منطقی پشتش نیست .
اگه برنامت ست آپ نیست و می خایت فقط پروژتو ارائه بدید خوب یه زحمت بکش فلش پلییر رو هم نصب کن
اگه برنامت رو می خای اجرا کنی خوب برنامتو به وسیله برنامه spoon پرتابل کن که در موقع پرتابل کردن فلش رو هم بهش اضافه کن در کل من موندم چی بگم
ببین دوست عزیز اون جور که من منظورتو متوجه شدم اینه که شما می خوایی از درون برنامت نرم افزار فلش پلیر رو نصب کنی اگه منظورت اینه باید بگم که شما ابتدا فایل نصب فلش پلیر رو در پوشه ی بین کپی کن و بعد از قسمت propertis پروژه اونو اضافه کن و فایل رو فراخوانی کن
اگه خواستی بگو بیشتر راهنماییت کنم
سلام
من این کار قبلا انجام دادم اتفاقا برای پروژه پایان ترم بود فلش پلیر مخفی نصب کردم در حال نصب هم یک intro گذاشتم تنها مشکلش در ویندوز سون این است که uac به برنامه گیر میده (چون داره مخفی نصب میکنه ) که اون در برنامه به صورت توجه نوشتم تا کاربر yes بزنه ورژن فلش پلیر هم چک کردم تا در صورتی که فلش پلیر نصب نیست یا ورژنش پایین تر از ورژنی هست که من اسنفاده کردم اونوقت نصب شروع کنه
کد برنامه
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Media;
using System.IO;
using System.Diagnostics;
using Microsoft.Win32;
namespace intro
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Shown_1(object sender, EventArgs e)
{
Form2 dialog = new Form2();
DialogResult result = dialog.ShowDialog();
Application.Exit();
}
private void Form1_Load(object sender, EventArgs e)
{
timer1.Enabled = true;
timer1.Interval = 220;
double version = 0;
string subkey = @"CLSID\{D27CDB6E-AE6D-11cf-96B8-444553540000}\InprocServer32";
RegistryKey key;
try
{
key = Registry.ClassesRoot.OpenSubKey(subkey, false);
string path = key.GetValue("").ToString();
if (File.Exists(path))
{
FileVersionInfo info = FileVersionInfo.GetVersionInfo(path);
string ver = string.Format("{0}.{1}", info.ProductMajorPart, info.ProductMinorPart);
version = double.Parse(ver);
}
key.Close();
}
catch
{
}
toolStripLabel3.Text = version.ToString();
if (toolStripLabel3.Text == "0" || toolStripLabel3.Text == "7" || toolStripLabel3.Text == "8" || toolStripLabel3.Text == "9")
{
toolStripLabel4.Visible = true;
toolStripButton1.Visible = true;
string folder = System.IO.Path.GetDirectoryName(Application.Execut ablePath);
string path = System.IO.Path.Combine(folder, "install_flash_player_10_active_x.exe");
// string arguments = "/install";
string arguments = "/s";
System.Diagnostics.Process.Start(path, arguments);
}
else
{
toolStripLabel4.Visible = false;
toolStripButton1.Visible = false;
toolStripButton2.Visible = true;
toolStripLabel5.Visible = true;
// label2.Visible = false;
// toolStripLabel3.Visible =false;
// label2.Text=" فلش پلیر نصب است";
}
}
private void timer1_Tick(object sender, EventArgs e)
{
toolStripProgressBar1.Value += 1;
toolStripLabel2.Text = Convert.ToString(toolStripProgressBar1.Value) + "%";
if (toolStripProgressBar1.Value == 100)
{
toolStripProgressBar1.Value = 0;
timer1.Enabled = false;
}
}
}
}
یه مشکل دیگه هم که ممکنه پیش بیاد این که net. روی کامپیوتر کاربر نصب نباشه که اون هم با Xenocode Virtual Application Studio 2010 حل کردم اما بهتر که برنامه با C++ یا دلفی بنویسی
دوست عزیز در این مثال فایل صوتی ذکر شده اما خوب شما فایل نصب رو جایگزین کن
برای دسترسی به فایلهای صوتی داخل Resource و پخش کردن اونها نمیشه مانند دسترسی به bitmap ها یا .... عمل کرد.برای این کار میشه طبق مثال زیر عمل کرد.....
این مثال واسه وقتیه که یک فایل wav در resource وجود داشته باشه.برای فایل های بیشتر میشه از ArrayList استفاده کرد....
اضافه کردن namespace ها:
1
2
3
4
5
6
7
<span dir="ltr">
using System.Reflection;
using System.IO;
using System.Media;
using System.Runtime.InteropServices;
</span>
اضافه کردن dll مربوط به Windows Media Player :
1
2
3
4
5
6
7
<span dir="ltr">
[DllImport("Winmm.dll")]
private static extern bool PlaySound(byte[] data, IntPtr hMod, UInt32 dwFlags);
private const UInt32 SND_ASYNC = 1;
private const UInt32 SND_MEMORY = 4;
</span>
کدهای مربوطه:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<span dir="ltr">
private Assembly a = Assembly.GetExecutingAssembly();
private string _sound = string.Empty;
private Stream stream;
private Int32 length;
private byte[] _data;
foreach (string resourceName in a.GetManifestResourceNames())
if (Path.GetExtension(resourceName).ToLower() == ".wav")
_sound = resourceName;
stream = a.GetManifestResourceStream(_sound);
length = (Int32)stream.Length;
_data = newbyte[length];
stream.Read(_data, 0, length);
PlaySound(_data, IntPtr.Zero, SND_ASYNC | SND_MEMORY);
</span>