• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            franksunny的個人技術空間
            獲得人生中的成功需要的專注與堅持不懈多過天才與機會。 ——C.W. Wendte

            第二版的開機自啟動比較麻煩,需要涉及到創建mdl文件并且需要在mdl中將另一程序開啟,所以略過。至于第三版的開機自啟動相對來說更加簡單些:

            假設你的應用ID為:ef37946b

            1)data下新建一個文件, [ef37946b].rss(注意加上[])文件具體代碼如下

            #include <startupitem.rh>

            RESOURCE STARTUP_ITEM_INFO dispatcher

            {

                executable_name = "!:\\sys\\bin\\AutoStart.exe";

                recovery = EStartupItemExPolicyNone;

            }

            此處的AutoStart.exe是你的應用程序文件名。

            注:筆者試圖通過修改此處為其他應用程序名從而啟動指定其他程序,但是沒有成功。

            2)mmp文件中增加以下代碼

            START RESOURCE [ef37946b].rss

            TARGETPATH                 \private\101f875a\import

            HEADER                                  

            END

            確保:

            LANG              SC

            CAPABILITY         ReadUserData

            注意“\private\101f875a\import”不能夠變。

            3)pkg文件中增加以下代碼

            "$(EPOCROOT)epoc32\data\z\private\101f875a\import[ef37946b].rSC"-"!:\private\101f875a\import\[ef37946a].rSC"

             

            如果是采用carbide c++編譯,那么使用上述代碼就可以了。

            如果是使用makesis命令行打包或者使用.Net編譯,那么你需要修改成絕對路徑,路徑名視你的安裝目錄而定。

            例如:

            "C:\Symbian\9.1\S60_3rd_MR\Epoc32\Data\z\private\101f875a\import[ef37946b].rSC"-"!:\private\101f875a\import\[ef37946a].rSC"

            posted on 2008-05-09 22:48 frank.sunny 閱讀(2774) 評論(15)  編輯 收藏 引用 所屬分類: symbian 開發

            FeedBack:
            # re: 如何在第三版上實現開機自啟動
            2008-05-23 00:07 | CJQ
            頂!!

            不過我不是很明白!能不能說詳細易懂一點啊!
              回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2008-05-23 01:36 | frank.sunny
            @CJQ
            不知道你是不是搞開發的,如果是開發的,那看不懂的話,哪里不明白,你明說

            沒用搞過symbian S60 SDK開發的話,那我也不知道該如何詳細解釋了,很抱歉  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2008-05-27 09:28 | ldta100
            請問:筆者試圖通過修改此處為其他應用程序名從而啟動指定其他程序,但是沒有成功
            這句話是什么意思
            AutoStart.exe是指 應用程序.exe 對嗎
            還有我怎么才能知道我的應用程序ID呢,謝謝  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2008-05-27 11:14 | frank.sunny
            @ldta100

            AutoStart.exe是你需要自啟動的程序,也就是你本人的執行程序名稱,好比你建了一個工程HelloWorld,那么這個就是HelloWorld.exe

            再回答上一個問題,假如你的程序為HelloWorld.exe,那么或許還有一個其它程序叫Hello.exe,如果你想自啟動Hello.exe而將代碼修改為
            #include <startupitem.rh>
            RESOURCE STARTUP_ITEM_INFO dispatcher
            {
            executable_name = "!:\\sys\\bin\\Hello.exe";
            recovery = EStartupItemExPolicyNone;
            }
            那么將不能實現需求

            應用程序的id,如果這個程序不是你開發的,你可以裝個FExploorer查看得到

            我懷疑樓上應該是搞漢化之類的吧,在這一塊,本人實在幫不上忙,因為我沒有做過

              回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2008-05-27 12:11 | ldta100
            你說的很清楚,我的功能已經實現了,謝謝你呀,不過我還有一個問題就是第一步我在data下建立一個.rss文件,之后用carbide c++編譯,會出現錯誤,提示我說group里缺少一個.rss文件,我把這個文件復制到group里,就可以通過編譯了,這是什么原因呢?  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2008-05-27 17:48 | frank.sunny
            @ldta100

            沒遇到過,不介意的話,可以把mmp文件內容給我看下,懷疑是mmp中路徑的問題  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2008-05-28 14:40 | ldta100
            當然可以
            /*
            ============================================================================
            Name : emailbody.mmp
            Author : aaaa
            Copyright : Your copyright notice
            Description : This is the project specification file for emailbody.
            ============================================================================
            */
            START RESOURCE [ECA93FBE].rss

            TARGETPATH \private\101f875a\import

            HEADER

            END

            LANG SC

            TARGET emailbody.exe
            TARGETTYPE exe
            UID 0 0xECA93FBE

            USERINCLUDE ..\inc
            SYSTEMINCLUDE \epoc32\include


            LIBRARY apparc.lib
            LIBRARY avkon.lib
            LIBRARY bafl.lib
            LIBRARY cone.lib
            LIBRARY euser.lib
            LIBRARY efsrv.lib
            LIBRARY estor.lib
            LIBRARY etext.lib
            LIBRARY eikcore.lib
            LIBRARY eikcdlg.lib
            LIBRARY eikctl.lib
            LIBRARY eikcoctl.lib
            LIBRARY msgs.lib smcm.lib gsmu.lib
            LIBRARY flogger.lib
            LIBRARY apmime.lib CommonUI.lib
            LIBRARY imcm.lib mmscli.lib
            LIBRARY sendas2.lib


            CAPABILITY LocalServices NetworkServices ReadUserData UserEnvironment WriteUserData

            SOURCEPATH ..\src
            SOURCE emailsend3rd.cpp UP.cpp
              回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2008-05-28 15:57 | frank.sunny
            這就對了嗎,默認的mmp在group文件夾中,自然默認的資源路徑也在group文件夾下了

            在START RESOURCE [ECA93FBE].rss

            TARGETPATH \private\101f875a\import

            HEADER

            END
            前加上代碼
            SOURCEPATH ..\data
            這樣就可以放在data下面了
            其實這些都是一個形式,只要了解mmp的編寫就知道是怎么回事情了  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2008-05-29 18:02 | ldta100
            問題解決了,謝謝你,祝你每天都有一份好心情!!  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2009-03-11 17:28 | beautymind2008
            你好!
            我按照你的方法寫了一個啟動界面的程序,但是沒有啟動成功,你能幫我看看代碼嗎?
            我的QQ38224875  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2009-03-11 21:09 | frank.sunny
            本人不用qq
            你如果方便就貼出代碼或者對照文章仔細查查你哪里不對吧?  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2009-03-13 10:10 | beautymind2008
            1.我的UID3是0xE59275ED所以在data目錄下建立了文件[E59275ED].rss,并加入代碼:
            #include <startupitem.rh>
            RESOURCE STARTUP_ITEM_INFO dispatcher
            {
            executable_name = "!:\\sys\\bin\\ATStart.exe";
            recovery = EStartupItemExPolicyNone;
            }

            2.mmp中加入代碼:
            START RESOURCE [E59275ED].rss
            TARGETPATH \private\101f875a\import
            HEADER
            END
            確保了
            LANG SC (我的系統自動生成的是01文件,這個我也試過也是不能啟動,后來就該成了SC)
            CAPABILITY ReadUserData
            3.pkg文件中加入代碼:
            "$(EPOCROOT)epoc32\data\z\private\101f875a\import[E59275ED].rSC"-"!:\private\101f875a\import\[E59275ED].rSC"

            我用的是N95(8G)手機,sis文件生成以后做了open signed,在手機上裝了查看進程和任務的軟件,但是開機后看不到程序的相關進程和任務!!
            您幫我看看還有什么地方寫的不對!!謝謝!!!  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2009-03-13 10:24 | beautymind2008
            我把mmp文件和pkg都發上來吧,我做了很多測試了都不行,您能留個郵箱嗎?我把工程發給你!!
            mmp:

            TARGET ATStart.exe
            UID 0x100039CE 0xE59275ED
            VENDORID 0
            TARGETTYPE exe
            EPOCSTACKSIZE 0x5000

            SYSTEMINCLUDE \epoc32\include \epoc32\include\variant \epoc32\include\ecom
            USERINCLUDE ..\inc ..\data

            SOURCEPATH ..\data
            START RESOURCE ATStart.rss
            HEADER
            TARGETPATH resource\apps
            END //RESOURCE

            START RESOURCE [E59275ED].rss //后加上的
            TARGETPATH \private\101f875a\import //后加上的
            HEADER //后加上的
            END //后加上的

            START RESOURCE ATStart_reg.rss
            TARGETPATH \private\10003a3f\apps
            END //RESOURCE

            LIBRARY euser.lib apparc.lib cone.lib eikcore.lib avkon.lib
            LIBRARY commonengine.lib efsrv.lib estor.lib eikcoctl.lib eikdlg.lib
            LIBRARY eikctl.lib bafl.lib fbscli.lib aknnotify.lib aknicon.lib
            LIBRARY etext.lib gdi.lib egul.lib insock.lib
            LIBRARY ecom.lib InetProtUtil.lib http.lib esock.lib

            LANG SC //01改為了SC

            START BITMAP ATStart.mbm
            HEADER
            TARGETPATH \resource\apps
            SOURCEPATH ..\gfx
            SOURCE c12,1 list_icon.bmp list_icon_mask.bmp
            END

            SOURCEPATH ..\src

            #ifdef ENABLE_ABIV2_MODE
            DEBUGGABLE_UDEBONLY
            #endif

            SOURCE ATStartContainerView.cpp ATStartContainer.cpp ATStartDocument.cpp ATStartAppUi.cpp ATStartApplication.cpp

            CAPABILITY ReadUserData //后加上的

            pkg:
            ; ATStart.pkg
            ; This is an auto-generated PKG file by Carbide.
            ; This file uses variables specific to Carbide builds that will not work
            ; on command-line builds. If you want to use this generated PKG file from the
            ; command-line tools you will need to modify the variables with the appropriate
            ; values: $(EPOCROOT), $(PLATFORM), $(TARGET)
            ; Also, the resource file entries should be changed to match the language
            ; used in the build. For example, if building for LANGUAGE_01, change the file
            ; extensions .rsc to .r01.
            ;
            ;Language - standard language definitions
            &EN

            ; standard SIS file header
            #{"ATStart"},(0xE59275ED),1,0,0

            ;Localised Vendor name
            %{"Vendor-EN"}

            ;Unique Vendor name
            :"Vendor"

            ;Supports Series 60 v 3.0
            [0x101F7961], 0, 0, 0, {"Series60ProductID"}

            ;Files to install
            ;You should change the source paths to match that of your environment
            ;<source> <destination>
            "$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\ATStart.exe" -"!:\sys\bin\ATStart.exe"
            "$(EPOCROOT)Epoc32\data\z\resource\apps\ATStart.rSC" -"!:\resource\apps\ATStart.rSC"
            "$(EPOCROOT)Epoc32\data\z\private\10003a3f\apps\ATStart_reg.rSC" -"!:\private\10003a3f\import\apps\ATStart_reg.rSC"
            "$(EPOCROOT)epoc32\data\z\resource\apps\ATStart_aif.mif" -"!:\resource\apps\ATStart_aif.mif"
            "$(EPOCROOT)epoc32\data\z\resource\apps\ATStart.mbm" -"!:\resource\apps\ATStart.mbm"

            ;這個路徑是我后加上的
            "$(EPOCROOT)epoc32\data\z\private\101f875a\import[E59275ED].rSC"-"!:\private\101f875a\import\[E59275ED].rSC"

            ; Add any installation notes if applicable
            ;"ATStart.txt" -"!:\private\0xE59275ED\ATStart.txt"

              回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2009-03-13 20:46 | frank.sunny
            首先,不妨建議你裝到其他手機上試一下,看能否可行
            其次,N95好高級的,將設備號改成0x102032BE試試看可行不
            最后,說句實話,我也快小半年沒搞過symbian,手上沒有智能手機,建議你去論壇看看,如果你真要發郵件給我,那就發frank.sunny@163.com,不過真的未必幫得上忙  回復  更多評論
              
            # re: 如何在第三版上實現開機自啟動
            2009-03-18 16:19 | beautymind2008
            問題解決了:)代碼沒問題 第一次簽名沒簽上!!呵呵  回復  更多評論
              

            常用鏈接

            留言簿(13)

            隨筆分類

            個人其它博客

            基礎知識鏈接

            最新評論

            閱讀排行榜

            評論排行榜

            久久久久亚洲AV无码观看| 久久久久国产精品| 久久久久波多野结衣高潮| 久久99精品久久久大学生| 99久久精品国内| 亚洲精品综合久久| 国产成人综合久久综合| 热久久国产欧美一区二区精品| 99精品国产综合久久久久五月天| 2021久久精品国产99国产精品| 精品水蜜桃久久久久久久| 狠狠色噜噜色狠狠狠综合久久 | 欧美777精品久久久久网| 久久久久久噜噜精品免费直播| 77777亚洲午夜久久多喷| 品成人欧美大片久久国产欧美| 精品综合久久久久久98| 久久se这里只有精品| 国产精品99久久精品| 久久久久久久精品妇女99| 精品久久久久久无码中文字幕| 久久综合给合久久国产免费| 亚洲国产成人久久综合碰| 99久久国产综合精品五月天喷水 | 午夜精品久久久久久久无码| 国产精品久久久久久久久鸭| 久久久久久久波多野结衣高潮| 久久精品国产亚洲av瑜伽| 久久久久久狠狠丁香| 粉嫩小泬无遮挡久久久久久 | 成人午夜精品久久久久久久小说| 人妻无码中文久久久久专区| 97视频久久久| 一级做a爰片久久毛片毛片| 久久久久久国产a免费观看不卡 | 色综合久久精品中文字幕首页| 久久精品人人做人人爽97 | 久久久亚洲欧洲日产国码aⅴ| 国产成人精品三上悠亚久久| 久久人妻无码中文字幕| 精品一二三区久久aaa片|