PerSalmi.NET

Swedish .Net software developer...
# Friday den 8 August 2008

Jag vet att jag kommer att sitta och leta efter lösningen på det här problemet fler gånger framöver när teflonminnet slagit till. Det lika bra att posta lösningen här nu direkt medan jag minns även om ingen annan någonsin kommer att behöva den.

Problemet:

Scenariot är att jag har lagt till kontroller på en dialog i ett MFC-baserat C++ projekt för Windows Mobile i Visual Studio 2008 och nu ska koppla kod till events på dessa kontroller. T. ex. en OnBnClick-handler för en knapp. Vanligtvis är det bara att högerklicka på knappkontrollen och välja Add Event Handler… för att få upp Event Handler Wizarden. Men inte denna gång! Istället fick jag ett felmeddelande: “Add/Remove operation is impossible, because the code element C… is read only". Kollade massor av grejer, inga filer var låsta av nån process, omstart av Visual Studio hjälpte inte heller, hittade referenser till att det varit en bugg med detta symptom i VS2005 men att det fixats i SP1 för 2005. Nu var jag ju uppe på VS2008 så det borde inte vara samma.

image

Lösningen:

Det var enkelt när jag väl kom på det! Stäng Visual Studio och gå till Utforskaren och radera sedan projektets .ncb-fil (i denna finns IntelliSense information) som vanligen ligger på solution-nivån på disken samt .aps-filen i projektmappen.

Starta om Visual Studio och ladda projektet, vips så fungerar verktygsstödet för att generera kod utifrån dialogeditorn och alla Wizards startar som de ska igen! Filerna som togs bort skapas om automatiskt när man laddar projektet.

image

Friday, 08 August 2008 14:06:53 (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
MFC | Windows Mobile | Visual Studio
# Friday den 4 April 2008

För att kunna debugga Windows Mobile applikationer direkt mot en fysisk enhet med Visual Studio krävs det att man släpper lite på säkerhetsnivåerna i mobilenheten. Det gör man ganska enkelt med den inbyggda Device Security Manager som finns i Visual Studio 2008.

  • Anslut den aktuella mobilenheten, i mitt fall en HTC Advantage x7500

htc_x7500_advantage

  • Starta Device Security Manager från Tools-menyn i Visual Studio. Managern hämtar nu upp infromation från enheten om den gällande säkerhetspolicyn som är aktiv.

Device Security Manager

  • Skapa en Xml-fil på disk med följande innehåll, det är enklast att exportera den gällande policyn och modifiera filen. De rödmarkerade inställningarna motsvarar Prompt respektive RAPI Access som förenklar debugging avsevärt. För en översikt av konfigurationsmöjligheterna, se denna länk till MSDN.


 
   
    1" />
   
   
    1" />
 

  • Importera filen till managern igen efter modifieringarna
  • Välj den nya policyn som automatiskt får namnet Custom
  • Klicka sedan på Deploy to Device för att spara den nya poilcyn till mobilenheten och samtidigt aktivera den

Nu kan Visual Studio kommunicera med enheten utan hinder och starta applikationen som ska köra utan att man behöver godkänna den för hand på enheten.

Man bör givetvis återställa en mer restriktiv policy på enheten när man inte längre använder den för debugging.

Friday, 04 April 2008 15:31:06 (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
Visual Studio | Windows Mobile
# Friday den 23 July 2004

Motorola MPx 200Ok, killarna i Motorolas monter i Windows Mobile avdelningen på TechEd höll sitt löfte och skickade manual, bordsladdare och synkroniseringskabel, allt snyggt och prydligt levererat via DHL. Jag får väl medge att jag inte riktigt trodde de skulle skicka nåt alls när jag snackade med dom efter att ha vunnit telefonen på dragningen efter Clemens Vasters sista föredrag på tordagskvällen.

Jag kanske ska ta storyn från början... I den väska man fick på TechEd hade Microsoft fyllt på med en massa grejer, en ganska stor andel av dessa var inriktade på utveckling på den mobila SmartPhone plattformen och PocketPC. Eftersom mitt intresse för programmering på denna plattform var minst sagt sviktande kändes det rätt bortkastat. Bland prylarna fanns SDK på CD, Pocket Streets navigationsprogram med kartor och boken .NET Compact Framework Pocket Guide. Dessa hann nästan förpassas till sopkorgen innan veckan var slut... Men en ändring skulle komma! 

När jag loggade på konferenssitens mailsystem på fredagsmorgonen fick jag ett mail om att jag vunnit den MPx200 telefon som lottades ut för varje timeslot under TechEd, det var rätt kul eftersom det faktiskt var min födelsedag! Snabbt iväg och hämta den... 

Nu hade man helt plötsligt användning av prylarna som nästan ratats några dagar tidigare. Boken blev perfekt litteratur under flygresan hem och gav ett trevligt smakprov på hur utveckling för den mobila plattformen funkar.

Uppenbarligen är de telefoner som lottades ut på TechEd en aning speciella eftersom de är utrustade med Windows Mobile 2003 inklusive .Net Compact Framework i ROM. De som säljs över disk är tydligen förinstallerade med Windows Mobile 2002 vilket inte heller kommer att ändras enligt Motorolas personal. Lite udda men jag ser det som en trevlig grej att testa mobilutveckling på. Eftersom jag tidigare bara har använt Nokia och SonyEricsson telefoner så blev jakten på en handsfree till Motorola en chock... Det finns ju knappt tillbehör till Motorola i Sverige! Jakten på en stereohandsfree kommer att fortgå eftersom jag tänkte se till att fixa ett SD/MMC minneskort till telefonen och utnyttja Media Player som en MP3/WMA spelare.

Friday, 23 July 2004 16:44:20 (W. Europe Daylight Time, UTC+02:00)  #    Comments [0]
Hårdvara | Windows Mobile
Blog & Contact
Per Salmi
Per Salmi
Min LinkedIn Profil

Jag arbetar på Combitech AB i Linköping med konsultuppdrag och utbildning inom Microsoft .NET området. Kontakta mig gärna om ni har frågor, behov av konsulttjänster eller är intresserade av utbildning inom .NET.

Copyright © 2017 Per Salmi

Bloggmotor: newtelligence dasBlog 2.3.12105.0

Sign In
Statistics
Total Posts: 220
This Year: 1
This Month: 0
This Week: 0
Comments: 40

Datorer
All Content Copyright © 2017, Per Salmi