PDA

View Full Version : سوال: manifest در resource



drwatson
جمعه 14 تیر 1387, 19:21 عصر
سلام
دوستان من این کد رو برای استخراج فایل مانیفست از ریسورس برنامم نوشتم
اما موقع ایجاد مانیفست یه space در آخرین خط اون میسازه و فایل اجرایی ارور میده
اینم کد:

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Form_Initialize()
InitCommonControls
Dim fs
Set fs = CreateObject("scripting.filesystemobject")
If fs.fileexists( app.path & "\" & App.EXEName & ".exe.manifest") Then
MsgBox "FileExist", vbInformation
Else
Dim v() As Byte
v = LoadResData(101, "CUSTOM")
ff = FreeFile
Open app.path & "\" & App.EXEName & ".exe.manifest" For Binary Access Write As #ff
Put #ff, , v
Close #ff
Sleep 2000
End If



البته نمیدونم روش بهتر چیه که فایل مانیفست توی exe قرار بگیره
ممنون میشم راهنمایی کنید

drwatson
یک شنبه 16 تیر 1387, 11:26 صبح
کسی نظری نداره؟؟؟؟؟؟؟؟؟

drwatson
چهارشنبه 26 تیر 1387, 13:12 عصر
من یه چیزی فهمیدم
وقتی برنامه درحال دیزان کامپایل میشه فایل ایجاد شده بدون اشکاله اما وقتی ازش اگزه درست
بشه فایل مشکل دار میشه
آخرشم نفهمیدم اشکال اصلی کجاست>؟؟؟

r0ot$harp
چهارشنبه 26 تیر 1387, 13:28 عصر
دوست عزیز من از این کد استفاده می کنم و درست هم کار می کنه :

این قسمت در Module :


Option Explicit

Private Type tagInitCommonControlsEx

lngSize As Long
lngICC As Long

End Type

Private Declare Function InitCommonControlsEx _
Lib "comctl32.dll" (iccex As tagInitCommonControlsEx) As Boolean

Private Const ICC_USEREX_CLASSES = &H200

Public Function InitCommonControlsXP() As Boolean

On Error Resume Next

Dim iccex As tagInitCommonControlsEx

With iccex
.lngSize = Len(iccex)
.lngICC = ICC_USEREX_CLASSES

End With

InitCommonControlsEx iccex
InitCommonControlsXP = CBool(Err = 0)

End Function



این هم در Form_Initialize قرار دهید :



Private Sub Form_Initialize()
InitCommonControlsXP
End Sub

سپس در برنامه فایل پیوست را باز کنید و تمام درست می شه .

مزیت این روش در اینه که احتیاج به فایل MANIFEST دیگه نیست .

باتشکر احسان

drwatson
پنج شنبه 27 تیر 1387, 19:09 عصر
با تشکر از دوست عزیزم این روش خیلی خوب کار کرد فقط یه سوال دارم
آیا روی ویندوز ویستا هم برنامه با این روش دارای استایل ویستا میشه یا نه؟

r0ot$harp
پنج شنبه 27 تیر 1387, 23:23 عصر
با تشکر از دوست عزیزم این روش خیلی خوب کار کرد فقط یه سوال دارم
آیا روی ویندوز ویستا هم برنامه با این روش دارای استایل ویستا میشه یا نه؟

من که تا الان تست نکردم ولی به زودی این تست را انجام می دم و خبر را در این تاپیک اعلام می کنم .




باتشکر