導航:首頁 > 編程語言 > wpf程序發布

wpf程序發布

發布時間:2023-06-01 23:02:30

❶ WPF做出的3D程序如何放到網頁上

先得轉換成圖片或者FLASH啊,然後上傳到網頁伺服器。如果不需要給別人看的話,那就直接上傳,別人可以下載下來。用3D打開。

❷ 在MFC中使用WPF技術

一 介紹

本文將以一個實例來說明如何將WPF技術集成在基於MFC的應用程序中 這種技術的主要目的是為了增強基於Win /MFC的應用程序的在圖形方面的表現能力 本文所提供的演示程序將在MFC對話框架應用程序中顯示一個WPF動畫時鍾 界面如圖 所示

本文需派賀差要的開發工具和開發庫 為了建立和運行demo程序 我們需要安裝如下的組件

Visual Studio 或Visual Studio NET Framework 或 NET Framework

所需要的平台 demo程序必須在下面支持 NET Framework 的操作系統平台上運行

Windows Vista Windows XP SP Windows Server SP

如果你是一名C++開發人員 並且想使用WPF技術來增強自己的基於Win /MFC應用程序 本文非常適合你 為了能從本文學習到更多的知識 我們需要熟悉VC++/CLi MFC XAML和C# 但是 如果我們不了解C#或XAML 我們仍然可以通過引用現成的DLL來使用WPF程序

二 什麼是WPF

WPF是Windows Presentation Foundation的拍碧縮寫 它是微軟 NET Framework 的一個子系統 這種技術允許開發人員高效地創建可視化的應用程序 並改善用戶體驗 由於WPF的發布 使用Windows程序在富控制項的設計 開發上更如虎添翼 WPF主要關注一套應用程序服務 用戶介面 D和 D 矢量圖 動畫 數據綁字 音頻 並提供一個在UI和商業邏輯之間的非常清晰的界限

WPF API是被管制的代碼 但是大多數Win /MFC程序是非管制的C++代碼 按著慣例 WPF API不能通過非常製程序調用 然後 通過使用VC編譯器的/clr選項 我們可以建立一個由管制和非管制混合而面的系統 在這個系統中 我們可以使管制和非管制代碼無縫地混合在一起

有一個要注意的是在C++工程中不允許編譯XAML文件 因此 我們必須建立一個包含在本例中所需要的所有XAML而的C# DLL 然後在C++工程中包含這個Dll引用

有兩種基本的技術可以融合WPF和Win /MFC代碼

將WPF放到Win /MFC程序中 使用這種技術 開發人員可以使用WPF的高級圖形能力來渲染Win /MFC應用程序

將Win /MFC放到WPF中 使用這種技術 開發人員可以在WPF中使用已經存在的

Win /MFC控制項 並通過一定的機制來傳遞數據

在本文中將採用第一種方法

三 融合Win /MFC和WPF程序

上面部分所說的是本例的基本規則 下面在本節中將介紹如何編寫具體的實現代碼 在本例中 我首先會演示使用XAML和C#建立WPF內容 並在VC++中引用這個DLL

本例的目的是建立一個用於設置日期和時間的設置工具 其中動畫部分使用WPF實現 程序的其他部分仍然使用MFC實現

這個演示程序由兩部分組成 一個是MFCHostMPF(由VC++/MFC代碼組成) 另一個是WPFControls(由XAML和C#代碼組成) 這個MFCHostWPF工程將由WPFControls工程所產生的DLL作為一個外部的引用 如圖 所示

向MFC工程中加入一個WPF引用 如圖 和圖 所示

三 在MFC應用程序中加入和WPF相關的代碼

先提一下 gcnew關鍵字被用於建立一個管制類型的實例 在本例中將建立一個垃圾回收集合棧的實例 所有被gcnew分配的內存空間將被垃圾回收器自動管理 而開發人員並不需要為什麼時間釋放它們而操心

為了使用WPF程序 關塵皮鍵是System::Windows::Interop::HwndSource類 這個類將在Win 窗口中使用WPF程序 因此 WPF程序可以作為MFC窗口的子窗口放到UI上 而在WPF對象和Win 窗口之間的通訊要通過引用C++程序中被存儲的靜態欄位 這些靜態欄位的代碼如下

ref class Globals { public: static System::Windows::Interop::HwndSource^ gHwndSource; static WPFControls::AnimClock^ gwcClock; };

HWND hwndWPF; // 和WPF相關的hwnd 為了建立一個HwndSource 首先需要建立一個HwndSourceParameters結構 這個結構需要如下的參數 類 窗口 窗口類型 窗口的初始位置 窗口的初始尺寸 父窗口 一但我們將HwndSourceParameters結構編寫完 就可以將這個結構到HwndSource的構造方法HwndSource(HwndSourceParameters)中 最後 我們將WPF時鍾的引用賦值給HwndSource對象的RootVisual屬性 並通過調用Handle ToPointer()返回HwndSource的HWND 代碼如下

HWND GetHwnd(HWND parent int x int y int width int height) { System::Windows::Interop::HwndSourceParameters^ sourceParams = gcnew System::Windows::Interop::HwndSourceParameters ( MFCWPFApp ); sourceParams >PositionX = x; sourceParams >PositionY = y; sourceParams >Height = height; sourceParams >Width = width; sourceParams >ParentWindow = IntPtr(parent); sourceParams >WindowStyle = WS_VISIBLE | WS_CHILD; Globals::gHwndSource = gcnew System::Windows::Interop::HwndSource(*sourceParams); DateTime tm = DateTime::Now; Globals::gwcClock = gcnew WPFControls::AnimClock(); Globals::gwcClock >ChangeDateTime(tm Year tm Month tm Day tm Hour tm Minute tm Second); FrameworkElement^ myPage = Globals::gwcClock; Globals::gHwndSource >RootVisual = myPage; return (HWND) Globals::gHwndSource >Handle ToPointer(); }

因此 無論用戶如何變化時鍾 我們的MFC代碼都會調用RefereshWPFControl()來刷新WPF時鍾

void RefreshWPFControl() { FrameworkElement^ page; DateTime tm = DateTime::Now; Globals::gwcClock >ChangeDateTime(tm Year tm Month tm Day tm Hour tm Minute tm Second); page = Globals::gwcClock; Globals::gHwndSource >RootVisual = page; return; }

現在我們已經有了大部分我們需要的功能了 而最後的任務是在MFC對話框代碼中找個地方調用HwndSource實現創建函數 當然 有很多地方可以做這個工作 但是OnCreate也許是最好的位置 在OnCreate事件句柄中調用GetHwnd()函數的代碼如下

int CMFCHostWPFDlg::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CDialog::OnCreate(lpCreateStruct) == ) return ; hwndWPF = GetHwnd(this >GetSafeHwnd() ); return ; }

四 結論 lishixin/Article/program/net/201311/11996

❸ 如何發布WPF桌面程序

方法/步驟

1首先打開已經完成的工程

2「文件」——>「新建」——>"項目"——>"安裝項目"

3"名稱"——可以自己根據要求修改。
"位置"——是指你要製作的安裝文件存放在什麼目錄內,可以根據需要修改,筆者一般是把它放在本工程的同一個目錄內。打包完成後,可以在此目錄下找到安裝程序。
確定後,看到解決方案資源管理器中增加了SetupDemo方案。當然名字仍然可以修改

END
開始製作安裝包

1安裝向導完成後即可進入項目文件夾:直接點右鍵選擇"添加"—>"項目輸出"

2選擇主輸出之後點擊確定

添加卸載程序
即在添加你的應用程序項目的時候,多添加一個msiexec.exe進去,
這個文件在c:\windows\system32文件夾下

卸載程序的位置

創建快捷方式
然後右擊你的可執行文件,創建快捷方式

如果想在開始程序中單獨創建文件夾,你就應當在「用戶的『程序』菜單」中建立文件夾並為它起個名子,並把快捷方式放到這個文件夾中。
然後把快捷方式分別剪切或復制到左邊的"用戶的'程序'菜單"和"用戶桌面"中。
這樣安裝程序安裝完成後會在"開始->所有程序"和"桌面"上生成程序的快捷方式

如果還需要添加其他文件,例如報表模板等等

設置卸載屬性
我選擇把卸載程序的快捷方式放在了開始菜單中,然後下面我們要的做的就是查找這個部署項目的ProctCode了,
滑鼠左鍵單擊項目名稱,記住是左鍵單擊,然後點擊屬性標簽,注意:不是右擊的屬性,這個區別很大,這時你就可以看到ProctCode了

然後打開你創建的那個快捷方式的屬性對話框,
在Aguements屬性中輸入"/x {ProctCode}"

加入.NET系統組件

選擇系統必備

最後,點擊"生成"即可在我們剛才設置的目錄下生成帶有卸載功能的安裝程序了

❹ VS2010 軟體發布: 在VS2010用C#寫好了一個WPF應用程序,該如何提供給別人使用呢

4.0的程序 只能在已安裝FRAMEWORK4.0的機器上運行

2.0的能在2.0~3.5的運行
3.0 ---- 3.0~3.5
1.1-----1.1

請在客戶機器上安裝對應版本的FRAMEWORK
如果你不寫安裝包,建議RELEASE編譯後,拷貝RELEASE文件夾內

❺ 如何編寫,編譯和運行WPF應用程序

1. 在記事本中編寫以下內容:
using System;
using System.Windows;
namespace zzm.SayHello{classSayHello{
[STAThread]
public static void Main(){
Window win = new Window();
win.Height = 200;
win.Width = 300;
win.Title = "你好,WPF!";
win.Show();
Application app = new Application();app.Run();}}}
2. 保存為Hello.cs。
3. 在命令行編譯WPF應用程序,在提示符下輸入以下命令:csc.exe
/out:SayHello.exe
/target:winexe Hello.exe
/reference:"D:\Program Files\Reference
Assemblies\Microsoft\Framework\v3.0\presentationframework.dll"
/reference:"D:\Program Files\Reference
Assemblies\Microsoft\Framework\v3.0\windowsbase.dll"
/reference:"D:\Program Files\Reference

閱讀全文

與wpf程序發布相關的資料

熱點內容
word使用教程下載 瀏覽:295
電腦文件平鋪圖片默認大小 瀏覽:115
文件查看設置信息失敗 瀏覽:668
編程如何編出烏鴉喝水的課文 瀏覽:20
國家反詐app報案助手怎麼使用 瀏覽:439
秘密文件丟失多少天 瀏覽:237
js中csstext 瀏覽:382
目標文件名過長復制 瀏覽:892
樂動力計步器老版本 瀏覽:933
壓縮文件鏈接怎麼編輯 瀏覽:808
如何鎖定PDF文件里的圖章 瀏覽:89
資料庫超時是什麼 瀏覽:649
文件怎麼改整列內容 瀏覽:764
360壓縮文件發郵件空白 瀏覽:813
上哪裡查自己大數據 瀏覽:907
編程語言怎麼學車 瀏覽:189
編程該怎麼學才能先找工作 瀏覽:524
文件刻制光碟多少錢 瀏覽:861
校園網的網路組成結構 瀏覽:862
u盤系統復制文件過大 瀏覽:843

友情鏈接