标签: orca

java.lang.IllegalStateException:初始化之前使用的Orca SharedPreferences

我在我的应用程序中集成了面向android v3.5的Facebook SDK,并包含了安装发布代码:

com.facebook.AppEventsLogger.activateApp(this);
Run Code Online (Sandbox Code Playgroud)

但我收到了很多由以下原因引起的崩溃:

Settings.java line 418
com.facebook.Settings.getAttributionId
Run Code Online (Sandbox Code Playgroud)

而它正在抛出异常:

java.lang.IllegalStateException: Orca SharedPreferences used before initialized
Run Code Online (Sandbox Code Playgroud)

我一直试图重现崩溃但没有成功.有人遇到过这个问题吗?我只是想知道:

/* Only activate FaceBook publish install if the user has the FaceBook app installed */
if (com.facebook.Settings.getAttributionId(getContentResolver()) != null){
    com.facebook.AppEventsLogger.activateApp(this);
}
Run Code Online (Sandbox Code Playgroud)

这会解决问题吗?谢谢!

java android orca sharedpreferences facebook-sdk-3.0

6
推荐指数
1
解决办法
1347
查看次数

从 .msi 读取平台信息

我正在使用这些Microsoft.Deployment.WindowsInstaller库从 .msi 文件中读出值。属性没问题,summary-information也可以读出,例如:

 static void Main(string[] args)
 {
    using (var database = new QDatabase(@"C:\myMsi.msi", DatabaseOpenMode.ReadOnly))
    {
         Console.WriteLine(database.ExecutePropertyQuery("ProductVersion"));
         Console.WriteLine(database.ExecutePropertyQuery("ProductName"));
         Console.WriteLine(database.ExecutePropertyQuery("Manufacturer"));
         Console.WriteLine(database.ExecutePropertyQuery("ARPREADME"));
     }
 }
Run Code Online (Sandbox Code Playgroud)

QDatabase对象甚至有一个很好的SummaryInfo属性,保存摘要信息。但是,我还没有找到如何获取 .MSI 所针对的平台。

好像可以读出平台,因为Orca也是这样做的(在Orca中打开Summary Information就可以看到平台)。

我怎样才能获得 .msi 所针对的平台?

c# installation windows-installer orca dtf

5
推荐指数
1
解决办法
1259
查看次数

Visual Studio安装项目MSI没有添加/删除条目

我正在使用Visual Studio安装项目进行部署.这可能听起来像是禁止,但我有一个特定的要求,卸载程序不要在添加/删除程序中注册.有什么我可以做的,以防止安装程序注册其卸载程序?

如果没有更好的东西,我甚至准备好基于Orca的解决方案.

windows-installer orca setup-project visual-studio

4
推荐指数
1
解决办法
2130
查看次数

使用 Orca 编辑 MSI 以在安装时添加注册表项

我正在尝试简化安装后需要更改注册表的软件包的安装。我希望能够将注册表更改添加到 MSI 中(我没有编写代码,我只是尝试编辑现有的 MSI)并将其远程部署,然后就可以完成它。

谁能提供一些关于如何执行此操作的好例子?此外,如果您推荐有关修改 MSI 的书籍或对 Microsoft 提供的内容进行深入解释的网站,我们将不胜感激。

谢谢,

windows-installer orca

4
推荐指数
1
解决办法
2万
查看次数

任何验证之前的Windows Installer自定义操作

我根据以下教程编写了一个Windows Installer自定义操作:http: //www.codeproject.com/kb/install/msicustomaction.aspx

我的自定义操作是杀死给定名称的后台进程,该进程仍可由用户打开.原因是我不希望用户看到给定EXE正在运行的警告,必须关闭才能继续安装.当MSI通过UI序列时,这可以正常工作,就像在教程中的"InstallUISequence"表中创建操作一样.
但是,当静默使用MSI(右键单击并选择修复或卸载)时,我的自定义操作当然不会执行.

我必须在哪里放置自定义操作,以便在静默运行时立即执行?

我尝试将其添加到"InstallExecuteSequence",但仍会显示"app running"警告.然后我尝试将自定义操作的序列号降低到5,但这也没有帮助.

注意:
我正在使用Orca来修改从Visual Studio安装项目生成的MSI.然后我使用转换文件来应用它.

windows-installer custom-action orca

2
推荐指数
1
解决办法
3611
查看次数